Webdriver等级类扩展了Fluent等,因此它(webdriver等)具有轮询页面,忽略异常和其他流畅等所有功能。因此,我们是否会使用流利的等待?
答案 0 :(得分:0)
WebDriverWait
只是FluentWait<T>
的一个专门案例,其类型为WebDriver
。因此,如果您要等待在驱动程序实例上发生事件,则应使用它而不是FluentWait
。它减少了一些击键:)
在硒的背景下,我们使用的其他对象是WebElement
。如果您希望等待元素发生事件,使用FluentWait
是一个更好的选择。
例如:
FluentWait<WebElement> wait = new FluentWait<WebElement>(element).withTimeout(30, TimeUnit.SECONDS).pollingEvery(5, TimeUnit.SECONDS);
wait.until(new Predicate<WebElement>() {
@Override public boolean apply(WebElement arg0) {
return arg0.isEnabled();
}
});
例如,您可以使用Function
变体等待按钮上的文字更改。