gpt4 book ai didi

java - selenium 3.12 和 geckodrvier 0.21.0 是否兼容且稳定,在 linux 机器上跳过所有测试

转载 作者:行者123 更新时间:2023-11-30 07:44:40 25 4
gpt4 key购买 nike

平台详情:

geckodriver 0.21.0 , Firefox: 60, Selenium: 3.12, cent Os 7

当我使用 mvn 运行它时,它成功启动:

geckodriver INFO Listening on 127.0.0.1:14185

Marionette INFO Listening on port 284135

测试在 Windows 机器上成功运行,但是当在 CentOs 7 上运行时,测试被跳过。

我观察到所有测试都被跳过,因为 Firefox 的 GUI 在一段时间后关闭,并在 cmd 控制台上显示以下信息和错误:

INFO: org.openqa.selenium.WebDriverException: java.io.IOException: unexpected end of stream on Connection{localhost:33365, proxy=DIRECT hostAddress=localhost/12 6.10.0.1:258107

[ERROR] java.net.ConnectException: Failed to connect to localhost/127.0.0.1:2285

/bin/sh: line 1: 8780 Killed /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64/jre/bin/java

if(platform.equalsIgnoreCase("linux")) {
FirefoxOptions options = new FirefoxOptions();
DesiredCapabilities desiredCap = DesiredCapabilities.firefox();
profile.setPreference("browser.download.dir",System.getProperty("user.dir")+ File.separator + "target");
System.setProperty("webdriver.gecko.driver", "/path/geckodriver/geckodriver");
System.setProperty("webdriver.firefox.bin","/usr/bin/firefox/firefox");
desiredCap.setCapability(CapabilityType.PLATFORM_NAME,Platform.LINUX);
desiredCap.setCapability("webdriver.firefox.profile",DesiredCapabilities.firefox());
driver = new FirefoxDriver();
}

我花了很多时间在这上面,但无法找到根本原因。使用 maven surefire 插件 2.19.1。

请帮我解决这个问题,我真的被困在这里了。

最佳答案

根据下面的文档,您在问题中提到的二进制文件组合 (Selenium v​​3.12/GeckoDriver v0.21.0/Firefox v60 ) 兼容且稳定如下:

Geckodriver Releases

这个错误信息...

INFO: org.openqa.selenium.WebDriverException: java.io.IOException: unexpected end of stream on Connection{localhost:33365, proxy=DIRECT hostAddress=localhost/12 6.10.0.1:258107
[ERROR] java.net.ConnectException: Failed to connect to localhost/127.0.0.1:2285

...暗示 GeckoDriver 无法启动/生成新的 WebBrowserFirefox 浏览器 session 。

正如您提到的关于使用 GeckoDriver v0.21.0 一样,无需提及 setPropertywebdriver.firefox.bin。您需要确保 Mozilla Firefox 安装在每个系统的默认位置。

解决方案

  • 根据您的代码试验,尽管您已经创建并配置了 FirefoxOptions 类和 DesiredCapabilities 类对象,但您还没有在执行过程中传递它们正在初始化 WebDriver
  • 如果您的用例需要FirefoxOptions 类和DesiredCapabilities 类对象,您需要在初始化WebDriverWeb 浏览器
  • 如果您的用例需要FirefoxOptions 类和DesiredCapabilities 类对象,您需要删除它们。

关于java - selenium 3.12 和 geckodrvier 0.21.0 是否兼容且稳定,在 linux 机器上跳过所有测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52422901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com