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

时间:2016-06-13 22:35:54

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

使用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 <class:LikeFanpageTaskTest>'

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

2 个答案:

答案 0 :(得分:5)

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

您可以使用以下内容在ruby中使用新的webdriver:

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

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

据我所知,牵牛花(新的驱动程序)支持尚未完成(我可能是错的),我看到this拉请求正在处理它但它没有完成或合并。

我认为你可以这样做:

browser = Watir::Browser.new :marionette

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

答案 1 :(得分:0)

请使用最新的webdriver selenium-webdriver.2.5.4它在seleniumhq上尚未提供,但会搜索它。