spec_helper
Capybara.register_driver :chrome do |app| Capybara::Selenium::Driver.new(app,:browser => :chrome) end Capybara.javascript_driver = :chrome
我似乎越来越好
EOFError: end of file reached
在我使用chrome驱动程序运行它们的所有Javascript测试中.
这似乎是在2016年10月27日左右开始的
与恶作剧一起运行他们工作正常.
•当他们崩溃时,他们似乎打开多个挂起(但不退出)的chrome实例,请参阅http://screencast.com/t/Worwl9d6Iuhr截图示例
•这些似乎只影响我的javascript规范(:js =>在Capybara中为true)
•重新启动我的机器无法解决问题
•我的Chrome Mac OS X目前为54.0.2840.71
•我不确定子点子版本71何时发布,因为Chrome当然没有告诉您,或者甚至似乎在某种更新历史记录中提供它.公共信息称子点版本54.0.2840于2016-10-12发布,但未指定何时发布子点版本71
•我可以重现我在master上的代码的效果,同样,我有一个特定的内存,在本周早些时候使用Chrome驱动程序运行这些规范,所以我强烈怀疑Chrome在这里发布了一个子点发布,打破了这个.
如果有其他人可以确认我会很感激.否则,如果我发现当地问题,我会在这里发布答案.
•Capybara 2.7.1
•selenium-webdriver 2.53.0
•我将Chromedriver可执行文件放在我的机器中/usr/local / bin / chromedriver [这是正确的 – 我似乎在/ Users / jason / bin / chromedriver中有一个较旧的?]
$chromedriver
在/usr/local / bin目录/ chromedriver
$/usr/local / bin / chromedriver -v
ChromeDriver 2.20.353124(035346203162d32c80f1dce587c8154a1efa0c3b)
解决方法
通过brew来做到这一点
$brew unlink chromedriver Unlinking /usr/local/Cellar/chromedriver/2.20... 1 symlinks removed $brew install chromedriver ==> Using the sandBox ==> Downloading https://chromedriver.storage.googleapis.com/2.25/chromedriver_mac6 ######################################################################## 100.0% ==> Caveats To have launchd start chromedriver now and restart at login: brew services start chromedriver Or,if you don't want/need a background service you can just run: chromedriver ==> Summary