在 watir webdriver 中使用无头 chrome

rai*_*eep 5 ruby watir watir-webdriver

在 watir 文档(http://watir.com/guides/chrome/)中,已经提到做

Watir::Browser.new :chrome, headless: true
Run Code Online (Sandbox Code Playgroud)

将使我们能够使用无头 chrome

这似乎不起作用。

我收到如下错误

2.4.0 :001 > require 'watir'
 => true 
2.4.0 :002 > Watir::Browser.new :chrome, headless: true
ArgumentError: unknown option: {:headless=>true}
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/remote/bridge.rb:86:in `initialize'
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/remote/bridge.rb:53:in `new'
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/remote/bridge.rb:53:in `handshake'
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/chrome/driver.rb:57:in `initialize'
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/common/driver.rb:46:in `new'
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/common/driver.rb:46:in `for'
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver.rb:86:in `for'
        from /Users/sandeep.kumar/.rvm/gems/ruby-2.4.0/gems/watir-6.3.0/lib/watir/browser.rb:46:in `initialize'
        from (irb):2:in `new'
        from (irb):2
        from /Users/sandeep.kumar/.rvm/rubies/ruby-2.4.0/bin/irb:11:in `<main>'
Run Code Online (Sandbox Code Playgroud)

我拥有的 chrome 版本是 59.0.3071.115

我拥有的 chrome 驱动程序版本是

ChromeDriver 2.20.353124 (035346203162d32c80f1dce587c8154a1efa0c3b
Run Code Online (Sandbox Code Playgroud)

使用

selenium-webdriver 3.4.3

watir 6.7.1 (was 6.3.0)
Run Code Online (Sandbox Code Playgroud)

rai*_*eep 3

这个问题已经解决了。似乎 watir 版本6.7.1支持此功能,但不支持6.3.0

当我拥有最新版本的watirgem 时,它工作正常

  • 考虑到该功能是在 watir 6.3 之后添加的,这是完全有道理的。 (3认同)