我在Selenium有一个工作代码。
更新Geckodriver和Selenium Standalone Server后,Webdriver wait.until()
功能不再起作用。
因此,在使用谷歌后,我注意到我还必须将番石榴更新到版本23。
在eclipse中,我将这个番石榴版本导入到项目中,但该功能仍然无法使用。
有没有人已经遇到过这个问题或者知道解决方案?
最好的问候
编辑:
这是ErrorMessage:
直到(Function)类型的方法 FluentWait不适用于参数 (谓词)
但我实际上并没有使用FluentWait。我使用WebDriverWait
void waitForPageLoad(double d){
WebDriverWait wait = new WebDriverWait(this.driver, 10);
Predicate<WebDriver> pageLoaded = new Predicate<WebDriver>(){
@Override
public boolean apply(WebDriver input){
return ((JavascriptExecutor) input).executeScript("return document.readyState").equals("complete");
}
};
try {
Thread.sleep((long) (d*1000));
} catch (InterruptedException e) {
e.printStackTrace();
}
wait.until(pageLoaded);
}
答案 0 :(得分:0)
void waitForPageLoad(double d){
try {
Thread.sleep((long) (d*1000));
} catch (InterruptedException e) {
e.printStackTrace();
}
new WebDriverWait(this.driver, (long) (10000)).until(driver ->
((JavascriptExecutor) driver).executeScript("return document.readyState").equals("complete"));
}
我找到了这个解决方案并且它正在运行。因此不再需要手动更新Guava。他们只是在他们的框架中改变了一些东西