1

我正在尝试让黄瓜测试在我们的无头 centOS 机器上运行。我已经安装了 Xvfb、firefox 和我的测试套件,它们在我们的非无头(有头?)机器上运行。

版本

CentOS: 6.2
firefox: 23.0.1
headless: 1.0.1
selenium-webdriver: 2.35.0
watir-webdriver: 0.6.4
ruby: 1.9.3

在 irb 中:

1.9.3-p448 :001 > require 'watir-webdriver'
 => true
1.9.3-p448 :002 > require 'headless'
 => true
1.9.3-p448 :004 > headless = Headless.new
 => #<Headless:0x000000025e0860 @display=99, @autopick_display=true, @reuse_display=true, @dimensions="1280x1024x24", @video_capture_options={}, @destroy_at_exit=true>
1.9.3-p448 :005 > headless.start
 => #<Proc:0x000000025e5180@/usr/local/rvm/gems/ruby-1.9.3-p448/gems/headless-1.0.1/lib/headless.rb:175>
1.9.3-p448 :006 > b = Watir::Browser.new(:firefox)
Selenium::WebDriver::Error::WebDriverError: unable to obtain stable firefox connection in 60 seconds (127.0.0.1:7055)
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/firefox/launcher.rb:79:in `connect_until_stable'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/firefox/launcher.rb:37:in `block in launch'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/firefox/socket_lock.rb:20:in `locked'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/firefox/launcher.rb:32:in `launch'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/firefox/bridge.rb:24:in `initialize'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/common/driver.rb:31:in `new'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/common/driver.rb:31:in `for'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver.rb:67:in `for'
        from /usr/local/rvm/gems/ruby-1.9.3-p448/gems/watir-webdriver-0.6.4/lib/watir-webdriver/browser.rb:46:in `initialize'
        from (irb):6:in `new'
        from (irb):6
        from /usr/local/rvm/rubies/ruby-1.9.3-p448/bin/irb:13:in `<main>'

尝试运行测试时我遇到了同样的问题(这更容易重现)。

我在这里查看了其他问题,但我已经在使用最新版本。根据更新日志,他们支持 Firefox 23。有人有什么想法吗?提前致谢!

更新 8/28/2013 0900:当我尝试运行 Xvfb 时出现此错误。

[dix] Could not init font path element catalogue:/etc/X11/fontpath.d, removing from list!
[dix] Could not init font path element built-ins, removing from list!

我通过使用修复它

yum -y install libXfont

但我仍然遇到同样的错误。

更新 8/28/2013 0930:根据 TDHM 的建议,我通过运行将 firefox 降级到 17.0.8

yum downgrade firefox

但我仍然遇到同样的错误。

4

2 回答 2

6

我的一个同事设法解决了这个问题。运行这行代码:

$ dbus-uuidgen > /var/lib/dbus/machine-id

问题已解决。是修复的来源

于 2013-09-04T15:41:56.563 回答
1

我不确定,但看看降级 Firefox 版本是否有效。因为很多时候最新版本的 Selenium 与最新的浏览器版本存在问题。

于 2013-08-28T15:21:00.760 回答