当前位置: 首页 > 知识库问答 >
问题:

无法在Firefox Jenkins上运行自动化

胡俊弼
2023-03-14

我在Ubuntu服务器上最近安装的Jenkins上运行自动化项目时遇到了麻烦。我有以下错误:

Selenium::WebDriver::Error::WebDriverError: unable to obtain stable firefox connection in 60 seconds (127.0.0.1:7055)
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver/firefox/launcher.rb:90:in `connect_until_stable'
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver/firefox/launcher.rb:55:in `block in launch'
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver/common/socket_lock.rb:43:in `locked'
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver/firefox/launcher.rb:51:in `launch'
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver/firefox/bridge.rb:43:in `initialize'
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver/common/driver.rb:53:in `new'
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver/common/driver.rb:53:in `for'
/var/lib/gems/2.3.0/gems/selenium-webdriver-2.53.0/lib/selenium/webdriver.rb:84:in `for'
/var/lib/gems/2.3.0/gems/watir-webdriver-0.9.1/lib/watir-webdriver/browser.rb:46:in `initialize'
/var/lib/jenkins/workspace/JobScience/lib/New_Automation/Test/test_basic.rb:15:in `new'
/var/lib/jenkins/workspace/JobScience/lib/New_Automation/Test/test_basic.rb:15:in `setup'

我已经读到应该更新selenium webdriver gem,但我已经更新了它。也在詹金斯安装了firefox插件,但仍然无法运行。

共有3个答案

梁晋鹏
2023-03-14

根据我的经验,这是一个版本问题,我已经决定使用火狐33.0

https://ftp.mozilla.org/pub/firefox/releases/

白侯林
2023-03-14

我不熟悉火狐插件,你不应该需要它,它可能会导致冲突。Watir使用Selenium在你的路径中寻找任何火狐可执行文件。确保Firefox 45在你的Ubuntu系统中存在于$PATH中列出的文件夹中,Selenium会连接到它。

司迪
2023-03-14

如果你只是搜索“Jenkins无法在60秒内获得稳定的firefox连接”,你会发现这是一个相当常见的问题。你也会看到,它可能是由许多事情造成的。

  • FF和Webdriver之间的版本控制冲突:(最常见)通常是因为您没有运行最新版本的firefox,和/或使用最新的selenium Webdriver gem
  • 权限问题:jenkins在executor系统上使用的帐户没有实际执行firefox的权限。如果您是通过手动登录executor系统进行测试,请确保您使用的用户与Jenkins相同
  • 没有显示:因为大多数詹金斯遗嘱执行人都是无头的。你可能需要设置一个环境变量,比如export DISPLAY=:0,或者运行一个像XVFB(一个虚拟帧缓冲区)这样的程序,或者使用无头gem(它包装了XVFB),这样firefox就不会因为没有显示而犹豫不决

一个很好的初始故障排除步骤是修改你的jenkins脚本,让它尝试启动火狐本身(不是通过webDrive),如果它运行,那么通常会排除权限或无头问题,所以问题是webDrive和火狐之间的。如果出现错误,它可能会指示问题是权限问题,还是缺乏显示。

你基本上需要消除这个问题的所有可能的原因,正如你的搜索将揭示有许多潜在的原因和解决方案。以下是一个小样本(是的,每个问题都是不同的SO问题,尽管标题几乎相同):

  • 无法从Jenkins CI new启动浏览器
  • 无法在60秒内获得稳定的firefox连接(127.0.0.1:7055)
  • 无法在60秒内获得稳定的firefox连接(127.0.0.1:7055)
  • 无法在60秒内获得稳定的firefox连接(127.0.0.1:7055)
  • 无法在60秒内(127.0.0.1:7055)获得稳定的firefox连接ubuntu
  • 无法在60秒内获得稳定的firefox连接
 类似资料:
  • 我有一个Java程序,它运行一个GUI,从用户那里接收所需的信息/显示信息。GUI中有一个按钮,它以PDF的形式生成一个提案,我希望用户能够下载。我在打开网页时无法让GUI自动运行,而是它只显示在超文本标记语言中引用的JNLP文件的图标。

  • 我尝试在我的svelte应用程序上使用splidejs创建图像滑块,该滑块正常工作,但当我尝试应用autoplay配置时,该滑块一开始不工作,或者当我打开包含splidejs实例的页面时,但当转到另一个页面,然后返回到该页面(包含splidejs实例的页面)时,该滑块与autoplay很好地工作。 这里是我的splide组件代码 我尝试了另一个解决方案,比如使用npm的svelte-slide包,

  • 我开始开发projet,现在使用windows。基本上,我可以使用maven生成一个Jar文件,但当我尝试运行Jar文件时,它并不好用。听起来好像没有找到hibernate属性。 我的错误: 我的Hibernate配置位于\src\main\Resources\application.properties 我怎么处理? [更新] 使用mvn spring boot运行时,我可能会得到不同的结果:r

  • 问题内容: 以下代码可在实时站点上运行,但无法在jsfiddle站点上运行。 谁能告诉我为什么它在jsfiddle上不起作用? 在控制台上,它记录:和。 您将代码作为片段嵌入此处时,可以看到该代码的工作原理: 问题答案: 您定义的函数是在onload函数中定义的,因此在它们被引用之前,因为它们是在该函数中定义的,所以只能在该函数中引用它们。您在HTML中将它们称为全局变量。您有三种选择 a)(最简

  • 问题内容: 我在Windows上有一个基本的webserver hello world应用程序,可用于Windows上的nodejs,它可在localhost上运行。但是,当我从互联网测试它时,它无法连接。我在netgear路由器中设置了端口转发。我是否在这里缺少使我的nodejs服务器对外界可见的步骤? 谢谢。 问题答案: 确保您聆听而不是 是仅对您的计算机可见的专用网络。 侦听所有接口,包括私

  • 问题内容: 我正在尝试在Ubuntu终端上运行javac。但是我得到以下信息: JDK已经安装并运行说 我的jdk安装在/ usr / lib / jvm / java-6-open- jdk中;而且我能够从Eclipse编译并运行Java程序。但是在使用终端时遇到了上述问题。 问题答案: 该二进制(可能其他的Java二进制文件)是/不是您的用户环境变量。有几种解决方法: 添加到用户的环境变量。您