Watir Webdriver(0.9.1)不再打开Firefox实例

使用Watir Webdriver v0.9.1 for rails(以及Selenium Webdriver 2.53.1)时,Firefox正在打开时

browser = Watir::Browser.new :firefox 

被称为。 然而,现在它失败了

 unable to bind to locking port 7054 within 45 seconds @ /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/socket_lock.rb:59:in `lock' /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/socket_lock.rb:40:in `locked' /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/firefox/launcher.rb:51:in `launch' /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/firefox/bridge.rb:43:in `initialize' /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/driver.rb:53:in `new' /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/driver.rb:53:in `for' /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver.rb:84:in `for' /Users/andmcadams/.rvm/gems/ruby-2.0.0-p648/gems/watir-webdriver-0.9.1/lib/watir-webdriver/browser.rb:46:in `initialize' test/integration/like_fanpage_task_test.rb:40:in `new' test/integration/like_fanpage_task_test.rb:40:in `block (2 levels) in ' 

它似乎随机地这样做,因为我没有从其工作forms更改代码,并且该行是第一行调用。 我有Firefox 37.0.2,之前有效。 我已经尝试重新启动计算机,杀死与ruby和Firefox相关的进程并重新启动它们,然后重新安装Firefox但无济于事。

Mozilla已经推出了一个新的webdriver,由于firefox 47中的一个bug,只有新的webdriver适用于firefox。 但是我建议永久切换到新的webdriver,因为firefox 48将完全删除支持。

您可以使用以下命令在ruby中使用新的webdriver:

 driver = Selenium::WebDriver.for :firefox, marionette: true 

但我不知道这是否会让你能够在watir中使用它。

至于我可以告诉marionette(新驱动程序)支持还没有在watir中完成(我可能是错的),我看到这个 pull请求正在处理它但它没有完成或合并。

它看起来像你可以这样做:

 browser = Watir::Browser.new :marionette 

当watir项目完成集成新驱动程序时。

PLease使用最新的webdriver selenium-webdriver.2.5.4它在seleniumhq上还没有,但是搜索它。