Как щелкнуть ссылку WebDriver: метод «Click», класс Actions и JavascriptExecutor не работают? - PullRequest
0 голосов
/ 05 июля 2019

enter image description here

HTML:

<div id="NarrowResultsSection">
   <div id="b_narrowClearAll"><span>Your Filter Selections</span> <a href="/search/everything?searchField=*&amp;category=everything&amp;searchFilter=" class="narrow-clear-all">Clear All</a></div>
   <div id="b_narrowClear">Books, Movies &amp; More<a href="/search/everything?searchField=*&amp;category=everything&amp;searchFilter=">Remove</a></div>
   <div id="b_narrowMedium">Medium: Books <a href="https://qa.qbpl.org/search/book?searchField=*&amp;category=book&amp;searchFilter=%20%20sm_format:book.audiobook">Remove</a></div>
   <div id="b_narrowMedium">Medium: Audiobooks <a href="https://qa.qbpl.org/search/book?searchField=*&amp;category=book&amp;searchFilter=%20sm_format:book%20">Remove</a></div>
</div>

Сообщение об ошибке:

org.openqa.selenium.ElementClickInterceptedException: element click intercepted: Element

1 Ответ

0 голосов
/ 05 июля 2019

Чтобы щелкнуть по Medium: Audiobooks, используйте WebdriverWait и elementToBeClickable, а затем щелкните элемент. Можно использовать следующий xpath.

WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//div[@id='b_narrowMedium'][contains(.,'Medium: Audiobooks')]/a[contains(.,'Remove')]"))).click();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...