为什么我们在 selenium webdriver 中需要番石榴?
Why we need guava in selenium webdriver?
我用 maven 创建了 selenium web 驱动程序项目。
我在某处读到我们需要添加番石榴依赖性。
有人知道为什么我们需要 guava 依赖 selenium 吗?
番石榴
Guava 是由 Google 开发的基于 Java 的开源库。它有助于开发人员和测试自动化工程师采用最佳编码实践,并有助于减少编码错误。它为集合、缓存、原语支持、并发、通用注释、字符串处理、I/O 和验证提供实用方法。
Maven 依赖
从 Selenium v3.141.59 客户端开始,Maven Dependency 是:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>25.0-jre</version>
</dependency>
tl;博士
您可以在以下位置找到一些相关讨论:
这是我能安排的最好的信息。
总结答案:
Selenium uses Guava libraries for Function and Predicates
.
以上引用(第 126 页)的参考:
关于 Selenium 中使用的函数和谓词的简要说明:
Guava 提供了两个基本的 "functional" 接口:
- Function,具有单一方法 B apply(A input)。
Function 的实例通常被期望是引用的
透明——没有副作用——并且与平等一致,
也就是说,a.equals(b) 意味着
function.apply(a).等于(function.apply(b))
示例:
public WebElement apply(WebDriver driver) {
return driver.findElement(locator);
}
here你也可以查一下。主要用于Selenium Waits(隐式除外)。
- Predicate,它有单一方法 boolean apply(T input)。
Predicate 的实例通常预计是无副作用的
并与equals一致。
示例:
here 您可以在 Guava
官方文档
上找到 Function and Predicates
的详细信息
希望对你有所帮助
我用 maven 创建了 selenium web 驱动程序项目。 我在某处读到我们需要添加番石榴依赖性。
有人知道为什么我们需要 guava 依赖 selenium 吗?
番石榴
Guava 是由 Google 开发的基于 Java 的开源库。它有助于开发人员和测试自动化工程师采用最佳编码实践,并有助于减少编码错误。它为集合、缓存、原语支持、并发、通用注释、字符串处理、I/O 和验证提供实用方法。
Maven 依赖
从 Selenium v3.141.59 客户端开始,Maven Dependency 是:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>25.0-jre</version>
</dependency>
tl;博士
您可以在以下位置找到一些相关讨论:
这是我能安排的最好的信息。
总结答案:
Selenium uses Guava libraries for
Function and Predicates
.
以上引用(第 126 页)的参考:
关于 Selenium 中使用的函数和谓词的简要说明:
Guava 提供了两个基本的 "functional" 接口:
- Function,具有单一方法 B apply(A input)。 Function 的实例通常被期望是引用的 透明——没有副作用——并且与平等一致, 也就是说,a.equals(b) 意味着 function.apply(a).等于(function.apply(b))
示例:
public WebElement apply(WebDriver driver) {
return driver.findElement(locator);
}
here你也可以查一下。主要用于Selenium Waits(隐式除外)。
- Predicate,它有单一方法 boolean apply(T input)。 Predicate 的实例通常预计是无副作用的 并与equals一致。
示例:
here 您可以在 Guava
官方文档
Function and Predicates
的详细信息
希望对你有所帮助