首页 >Java >java教程 >为什么 Selenium 2.53.0 与 Firefox 47.0 不兼容?

为什么 Selenium 2.53.0 与 Firefox 47.0 不兼容?

Patricia Arquette
Patricia Arquette原创
2024-11-12 04:42:01665浏览

Why is Selenium 2.53.0 Incompatible with Firefox 47.0?

Selenium 2.53 与 Firefox 47 的兼容性

尝试在 Firefox 中使用 WebDriver 时,可能会遇到错误:

org.openqa.selenium.firefox.NotConnectedException: Unable to connect
to host 127.0.0.1 on port 7055 after 45000 ms.

环境详细信息:

  • Firefox 版本:47.0
  • Selenium:2.53.0
  • Windows 10 64 位

原因和解决方案

不幸的是,Selenium WebDriver 2.53.0 与 Firefox 47.0 不兼容。处理 Firefox 浏览器的旧 WebDriver 组件 (FirefoxDriver) 正在逐步淘汰。从版本 3.0 开始,Selenium WebDriver 需要 geckodriver 二进制文件来控制 Firefox 浏览器。

要解决此问题,请下载 Firefox 驱动程序 (geckodriver) 并使用 Java 系统将 webdriver.gecko.driver 变量设置为其绝对路径属性:

System.setProperty("webdriver.gecko.driver", "/path/to/geckodriver");

或者,您可以利用 WebDriverManager 库来自动化此过程,该过程会根据您的操作系统下载适当的 Marionette 二进制文件并将其分配给系统属性。在您的项目中包含以下依赖项:

<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>5.1.0</version>
</dependency>

然后,在使用 WebDriver 之前执行以下行:

WebDriverManager.firefoxdriver().setup();

附加说明

Marionette 是 Firefox 浏览器自动化的未来,将取代 WebDriver 3 和 Firefox 48 。然而,目前(版本 0.9.0)其稳定性值得怀疑。详情请参阅 Marionette 路线图。

近期更新

2016 年 6 月 30 日,Selenium WebDriver 2.53.1 发布,恢复 FirefoxDriver 与 Firefox 47.0.1 的兼容性.

以上是为什么 Selenium 2.53.0 与 Firefox 47.0 不兼容?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn