#java #selenium-webdriver #xpath #css-selectors #webdriverwait
#java #selenium-webdriver #xpath #css-селекторы #webdriverwait
Вопрос:
Как я могу вызвать xpath для class
?
<button class="inline" data-ember-action="" data-ember-action-11310="11310">Load</button>
Я попытался вызвать его с помощью :
By.xpath("//span/button[text()='Load'][1]");
но он не может найти элемент.
Комментарии:
1. вы также можете добавить ошибку или исключение, которые вы получаете, для получения лучших ответов.
2.
//button[@class='inline' and text()='Load']
Ответ №1:
Используйте этот xpath:
//button[@class='inline' and text()='Load']
Ответ №2:
Элемент, похоже, является Ember.js включен элемент, поэтому для click()
элемента вам нужно вызвать WebDriverWait для elementToBeClickable, и вы можете использовать любое из следующих решений:
-
cssSelector
:new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("button.inline[data-ember-action]"))).click();
-
xpath
:new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//button[@class='inline' and text()='Load'][@data-ember-action]"))).click();