watir中的firefox Webdrivers(状态为红宝石)意外关闭状态为1的进程

时间:2018-08-25 12:34:30

标签: ruby-on-rails selenium selenium-webdriver webdriver watir

我有Rails应用程序

gem 'headless'
gem 'watir'
gem 'webdrivers'
gem 'watir-screenshot-stitch'
gem 'watir-scroll'

我正在使用debian 9,我已经安装了sudo apt-get install firefox-esr

firefox-esr -v
Mozilla Firefox 52.9.0

我在这里https://github.com/mozilla/geckodriver/releases v0.21.0下载了最新版本的geckodrivers,我将驱动程序放入了~/.webdrivers/

但是当我尝试启动浏览器browser = Watir::Browser.new :firefox, headless:true

我收到了即时错误:

Process unexpectedly closed with status 1

response.rb line 69 in assert_ok
response.rb line 32 in initialize
common.rb line 84 in new
common.rb line 84 in create_response
default.rb line 104 in request
common.rb line 62 in call
bridge.rb line 164 in execute
bridge.rb line 97 in create_session
driver.rb line 50 in initialize
driver.rb line 31 in new
driver.rb line 31 in new
driver.rb line 52 in for
webdriver.rb line 86 in for

我尝试清除并重新安装FF。

我尝试将v0.19.1用于壁虎驱动程序

但是没有任何效果,我不知道如何调试更多日志...

编辑:通过Selenium::WebDriver.logger.level = :debug我得到了:

DEBUG Selenium polling for socket on ["127.0.0.1", 4445]
App 1591 output: 1535219812449  geckodriver INFO    geckodriver 0.21.0
App 1591 output: 1535219812461  geckodriver INFO    Listening on 127.0.0.1:4445 
App 1591 output: 2018-08-25 19:56:52 INFO Selenium Skipping handshake as we know it is W3C. 
App 1591 output: 2018-08-25 19:56:52 INFO Selenium
    -> POST session 
App 1591 output: 2018-08-25 19:56:52 INFO Selenium    >>> http://127.0.0.1:4445/session | {"desiredCapabilities":{"browserName":"firefox","version":"","platform":"ANY","javascriptEnabled":true,"cssSelectorsEnabled":true,"takesScreenshot":true,"nativeEvents":false,"rotatable":false,"moz:firefoxOptions":{"args":["--headless"]}},"capabilities":{"firstMatch":[{"browserName":"firefox","moz:firefoxOptions":{"args":["--headless"]}}]}} App 1591 output: 2018-08-25 19:56:52 DEBUG Selenium      > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/3.14.0 (ruby linux)", "Content-Length"=>"341"} App 1591 output: 1535219812709  mozrunner::runner   INFO    Running command: "/usr/bin/firefox" "-marionette" "--headless" "-foreground" "-no-remote" "-profile" "/tmp/rust_mozprofile.ILvfKH3MZPFj" App 1591 output: Error: GDK_BACKEND does not match available displays App 1591 output: 2018-08-25 19:56:52 INFO Selenium <- {"value":{"error":"unknown error","message":"Process unexpectedly closed with status 1","stacktrace":""}}

1 个答案:

答案 0 :(得分:1)

我认为我们还没有为Firefox实现无懈可击。如果您在计算机上安装了xvfb,则可以使用无头gem。