Ruby on Rails速習実践ガイドのchapter5を実装している時にエラーが発生し対応したので備忘録です。
結論
chromedriver-helper
はサポート切れ。webdrivers
に切り替える。
環境
macOS 10.14.1 (Mojave)
Homebrew 2.2.5
Ruby on Rails 5.2.4.1
前提状況
テストの練習として、RSpec,Capybara,FactoryBotを使用したシステムテストを実装していた。
実装にあたり追加していたgemは以下。
gem 'rspec-rails', '~> 3.7' gem 'factory_bot_rails', '~> 4.11'
エラー
Specのコードを書き終え、以下にてテストを実施すると、
bundle exec rspec spec/system/tasks_spec.rb
こちらのエラーが表示された。
Selenium::WebDriver::Error::SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 80
ChromeDriverとChromeのバージョンが合っていなかった。
調べたところ、chromedriver-helper
は2019-03-31でサポートを終了しており、webdriversを使ってくれ、的なことが書いてある。
NOTICE: This gem is out of support as of 2019-03-31 Please use https://github.com/titusfortner/webdrivers instead.
対応
記載の通りのgemがあるので、それに移行してみる。Gemfileを以下のように書き換え、インストールを実施する。
gem ‘chromedriver-helper # 削除 gem 'webdrivers' # 追加
bundle
そしてテストを再度実施すると、問題なく通った(ということはChromedriverも問題なく起動した)ことが確認された。
Finished in 11.75 seconds (files took 5.24 seconds to load) 1 example, 0 failures