FlenWait在Selenium自动化测试中

时间:2016-06-02 13:24:50

标签: java selenium

我正在使用下面的代码,这是我从StackOverflow回答中得到的:

Wait<WebDriver> wait = new FluentWait<>(driver)
    .withTimeout(60, TimeUnit.SECONDS)
    .pollingEvery(5, TimeUnit.SECONDS)
    .ignoring(NoSuchElementException.class);

wait.until(new Function<WebDriver, Boolean>() {
    @Override
    public Boolean apply(WebDriver driver) {
        return driver.findElement(By.cssSelector("my-css-selector")).getText().contains("name");
    }
});

Eclipse在“until”上显示错误。当我将鼠标悬停在它上面时,它说:

  

until(Function<? super WebDriver,T>)类型中的方法Wait<WebDriver>不适用于参数(new Function<WebDriver,Boolean>(){})

我缺少什么?

1 个答案:

答案 0 :(得分:0)

一切似乎都很好,只是你可能使用了错误的函数导入。

你可能想要: -

Wait<WebDriver> wait = new FluentWait<>(driver)
            .withTimeout(60, TimeUnit.SECONDS)
            .pollingEvery(5, TimeUnit.SECONDS)
            .ignoring(NoSuchElementException.class);

wait.until(new com.google.common.base.Function<WebDriver, Boolean>() {
    @Override
    public Boolean apply(WebDriver driver) {
        return null;
    }
});