带有 HTMLUnitDriver 的 Selenium 3.0.x

Posted

技术标签:

【中文标题】带有 HTMLUnitDriver 的 Selenium 3.0.x【英文标题】:Selenium 3.0.x with HTMLUnitDriver 【发布时间】:2017-03-22 10:10:23 【问题描述】:

我的 Maven 项目中有 selenium-java 3.0.1。我读过这个版本没有与 htmlUnitDriver 一起打包。所以,我在我的 pom 中单独包含了 selenium-htmlunit-driver 2.52.0(可用的最新版本)。但是,当我这样做时,我在测试运行时遇到以下异常:

org.openqa.selenium.WebDriverException: java.lang.IllegalArgumentException: 找不到声明的字段类 org.apache.http.impl.client.HttpClientBuilder.sslcontext

根据this 链接,包括 selenium-java 和 selenium-htmlunit-driver 依赖项应该足够了。在某些情况下,可能还需要包含独立服务器,但我的项目并非如此。反正我试过了,还是不行。

selenium-htmlunit-driver 2.52.0 内部依赖于 org.apache.httpcomponents 4.5.1。

selenium-java 2.47.0 使用 htmlunit-driver 2.47.0,它使用 org.apache.httpcomponents 4.4.1。当我使用这些版本时,一切正常。

所以我的问题是,HTMLUnitDriver 完全不能与 Selenium 3.0.x 一起使用吗?还是我的理解完全错误?

【问题讨论】:

【参考方案1】:

Selenium 已更改工件 ID。请改用 htmlunit-driver

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>htmlunit-driver</artifactId>
    <version>2.23.2</version>
</dependency>

另请参阅: https://github.com/SeleniumHQ/htmlunit-driver

【讨论】:

以上是关于带有 HTMLUnitDriver 的 Selenium 3.0.x的主要内容,如果未能解决你的问题,请参考以下文章

Selenium HtmlUnitDriver 程序中捕获的 SocketException

带有硒网络驱动程序的竹子

解决python中selen模块中'list' object has no attribute 'send_keys'报错

干货来袭——WebDriver系列学习笔记

使用 Selenium python 驱动程序选择带有文本的 <option> 的正确方法是啥[重复]

如何使用无头(gui-less)Selenium WebDriver下载文件