Webdriver和Fluentwait

时间:2015-09-02 09:40:47

标签: selenium

Webdriver等级类扩展了Fluent等,因此它(webdriver等)具有轮询页面,忽略异常和其他流畅等所有功能。因此,我们是否会使用流利的等待?

1 个答案:

答案 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变体等待按钮上的文字更改。