wait.until(ExpectedConditions)在硒中不再工作

前端之家收集整理的这篇文章主要介绍了wait.until(ExpectedConditions)在硒中不再工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
到目前为止,我使用了2.45.0版本的硒,所有的等待都是这样完成的:
WebDriverWait wait = new WebDriverWait(webKitUtility.getWebDriver(),5);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("role")));

但是我将硒更新到3.1.0,我收到错误

“FluentWait类型中的方法until(Predicate)不适用于参数
(ExpectedCondition)”

我看到从2.45.0到3.1.0有些东西已经被弃用了.我正在调查现在最好的方法是什么,但我不确定.我在Google上发现的大部分事情都是旧信息,解释与目前为止使用的方式相同.

解决方法

我遇到过同样的问题.

我通过使用WebDriverWait的不被弃用的.until()方法修复它,并通过将以下内容添加到我的maven pom.xml中:

<dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>21.0</version>
</dependency>

除此之外,我的代码看起来和以前一样.

更具体地说现在有两个.until()方法.

旧的(已被弃用):
public void until(final谓词< T> isTrue){}

和新的:公开< V> V直到(功能<?super T,V> isTrue){}

猜你在找的Java相关文章