我正在使用下面的代码,这是我从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>(){})
我缺少什么?
答案 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;
}
});