【问题标题】:Selenium Not able to run Firefox browser from JenkinsSelenium 无法从 Jenkins 运行 Firefox 浏览器
【发布时间】:2018-10-04 08:09:56
【问题描述】:

我尝试通过 Ubuntu 机器上的 jenkins 在 Firefox 上使用 selenium 运行自动测试,但无法运行它。但是使用 Eclipse 可以正常运行相同的代码。我将它作为 maven 项目运行。

出现以下错误-

"[INFO] Running TestSuite
1524549883598   geckodriver INFO    geckodriver 0.20.0
1524549883615   geckodriver INFO    Listening on 127.0.0.1:14395
1524549883939   mozrunner::runner   INFO    Running command: "/usr/lib/firefox/firefox" "-marionette" "-profile" "/tmp/rust_mozprofile.78vmBc1aqdpF"
1524549883941   geckodriver::marionette TRACE     connection attempt 0/600
ExceptionHandler::GenerateDump cloned child 6290
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
ExceptionHandler::WaitForContinueSignal waiting for continue signal...
1524549884041   geckodriver::marionette TRACE     connection attempt 1/600
1524549884141   webdriver::server   DEBUG   <- 500 Internal Server Error {"value":{"error":"unknown error","message":"Process unexpectedly closed with status signal","stacktrace":""}}
Msg Process unexpectedly closed with status signal
Build info: version: '3.11.0', revision: 'e59cfb3', time: '2018-03-11T20:26:55.152Z'
System info: host: 'Unknown', ip: 'Unknown', os.name: 'Linux', os.arch: 'amd64', os.version: '4.4.0-96-generic', java.version: '1.8.0_131'
Driver info: driver.version: FirefoxDriver
remote stacktrace: 

火狐版本-60.0b10 硒-3.11.0 使用 Gecko 驱动”

【问题讨论】:

    标签: selenium ubuntu firefox jenkins geckodriver


    【解决方案1】:

    此错误消息...

    1524549884141   webdriver::server   DEBUG   <- 500 Internal Server Error {"value":{"error":"unknown error","message":"Process unexpectedly closed with status signal","stacktrace":""}}
    

    ...暗示 ma​​rionette 无法启动与 WebClientFirefox 浏览器的活动连接。

    您的主要问题是您使用的二进制文件之间的版本兼容性,如下所示:

    • 您的 Selenium 客户端 版本是 3.11.0
    • 您的 JDK 版本1.8.0_131,相当古老。
    • 您的 GeckoDriver 版本是 v0.20.0
    • 我们不知道您的 Firefox 版本。

    所以 JDK v8u131Selenium Client v3.11.0GeckoDriver v0.20.0 之间存在明显的不匹配。

    解决方案

    • JDK 升级到最新级别 JDK 8u162
    • GeckoDriver升级到GeckoDriver v0.20.1级别。
    • 根据您的代码块,确保 GeckoDriver 存在于指定位置。
    • 确保GeckoDriver非root 用户具有可执行权限
    • Firefox 版本升级到 Firefox v59.0.2 级别。
    • 清理你的项目工作区通过你的IDE重建你的项目只需要依赖。
    • 使用CCleaner 工具在执行测试套件之前和之后清除所有操作系统杂务。
    • 如果您的基础 Web Client 版本太旧,请通过Revo Uninstaller 卸载它并安装最新的 GA 和发布版本的 Web Client
    • 进行系统重启
    • 以非 root 用户身份执行 Test
    • 始终在 tearDown(){} 方法中调用 driver.quit() 以优雅地关闭和销毁 WebDriverWeb Client 实例。

    【讨论】:

    • 谢谢,我也会在 Ubuntu 上试试这个。有一段时间我在 Windows 上设置我的代码。还有一个问题。 Jenkins for Ubuntu 是否不支持用户可以看到的实际浏览器。
    猜你喜欢
    • 2023-01-07
    • 1970-01-01
    • 2013-06-08
    • 2017-10-23
    • 1970-01-01
    • 2012-05-08
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多