LoadError:无法加载此类文件 – selenium / webdriver / phantomjs

我在我的Cucumber Hooks文件中有这个代码来运行它正在工作的ghost驱动程序,直到昨天我开始看到错误消息:

Before do Selenium::WebDriver::PhantomJS.path = 'C:\phantomjs-2.1.1-windows\bin\phantomjs.exe' @browser = Watir::Browser.start "https://www.google.com", :phantomjs @browser.window.maximize end 

错误信息:

 LoadError: cannot load such file -- selenium/webdriver/phantomjs 

是的,我们已从Selenium 3.8中删除了对PhantomJS的支持。 PhantomJS项目不再维护 。 如果您确实需要无头,请调查Chrome或Firefox无头选项。

对于那些遇到此错误的人,您可以通过在Gemfile中锁定selenium-webdriver版本来解决此问题,如下所示:

 gem 'selenium-webdriver', '~> 3.6.0' 

然后将bundle update到降级。

(如果它只是作为watir或其他库的依赖项加载,你当前可能没有在你的Gemfile中指定selenium-webdriver。)

当然,长期解决方案是将PhantomJS移至Chrome或Firefox无头。