everydayrails/everydayrails-rspec-2017

chromedriver-helper is out of support, use webdrivers gem instead

JunichiIto opened this issue · 5 comments

Just FYI, chromedriver-helper is out of support.

https://github.com/flavorjones/chromedriver-helper

You can use webdrivers gem instead:

 group :test do
   # ...
-  gem 'chromedriver-helper'
+  gem 'webdrivers'

Thanks, this may be simple enough to swap in. I'll see if I can get to it this weekend.

I'm still working on this, but I ran across an issue tonight while replacing chromedriver-helper with webdrivers. After swapping out the gems, I kept getting the following failure on the JS-dependent test in the sample test suite (as it exists in the 06-features branch):

Failures:

  1) Tasks user toggles a task
     Failure/Error: visit root_path
     
     Net::HTTPServerException:
       404 "Not Found"
     # /Users/asumner/.rvm/gems/ruby-2.4.1/gems/webdrivers-3.7.1/lib/webdrivers/common.rb:109:in `get'
     # /Users/asumner/.rvm/gems/ruby-2.4.1/gems/webdrivers-3.7.1/lib/webdrivers/chromedriver.rb:26:in `latest_version'
     # /Users/asumner/.rvm/gems/ruby-2.4.1/gems/webdrivers-3.7.1/lib/webdrivers/common.rb:37:in `desired_version'
<... more stack trace ...>
     # ./spec/features/tasks_spec.rb:11:in `block (2 levels) in <top (required)>'
     # /Users/asumner/.rvm/gems/ruby-2.4.1/gems/spring-commands-rspec-1.0.4/lib/spring/commands/rspec.rb:18:in `call'
     # -e:1:in `<main>'

Finished in 4.71 seconds (files took 0.59138 seconds to load)
46 examples, 1 failure

Failed examples:

rspec ./spec/features/tasks_spec.rb:4 # Tasks user toggles a task

I thought at first that root_path wasn't being recognized, but it turns out that the 404 was coming from Google's servers trying to download chromedriver from https://chromedriver.storage.googleapis.com/LATEST_RELEASE_75.0.3745. I had a development version of Chrome installed (Version 75.0.3745.4 (Official Build) dev (64-bit)). When In uninstalled the dev version and replaced it with a regular version (Version 73.0.3683.86 (Official Build) (64-bit)) I was able to swap in webdrivers without issue.

I'm going to research this a little more before committing to the book. But in the meantime, if you try replacing chromedriver-helper with webdrivers and have issues, check which Chrome channel you're using.

I've got something ready to go for this, will release an update this weekend.

Thank you for your update. I've updated and released the Japanese version too.

Great, and thanks again for letting me know about this. I will see if the dev channel Chrome issue I ran into has been reported yet, and file an issue on the webdrivers repo if necessary.