Для реализации такой функции в наших тестах нам потребуется класс WebDriverWait и класс Predicate.
Пишем следующую функцию:
public void waitUntilElementPresent(final String xpath){
new WebDriverWait(this.driver, 10).until(new Predicate<WebDriver>() {
public boolean apply(WebDriver arg0) {
return !arg0.findElement(By.xpath(xpath)).isDisplayed();
}
});
}
new WebDriverWait(this.driver, 10).until(new Predicate<WebDriver>() {
public boolean apply(WebDriver arg0) {
return !arg0.findElement(By.xpath(xpath)).isDisplayed();
}
});
}
При вызове этой функции браузер будет ждать до тех пор пока элемент с xpath, который мы передали, существует.
PS: Небольшая поправка, в данном случае браузер будет ждать 10 секунд.
PS: Небольшая поправка, в данном случае браузер будет ждать 10 секунд.