Ruby on Rails 5 速習実践ガイドでRSpecが通らない時

  • このエントリーをはてなブックマークに追加
  • LINEで送る
ruby

環境

-OS: Ubuntu 20.04 LTS(WSL Windows10)
-Rails 5.2.4.4

wsl上のubuntuでRspecが通らないのでターミナルを見ると下記のエラーが…。

Failure/Error: visit login_path
Selenium::WebDriver::Error::WebDriverError:
  unable to connect to chromedriver xxx.x.x.x:xxxx
          
# ./spec/system/tasks_spec.rb:9:in `block (2 levels) in <top (required)>'



Failure/Error: raise Error::WebDriverError, cannot_connect_error_text
          
Selenium::WebDriver::Error::WebDriverError:
  unable to connect to chromedriver xxx.x.x.x:xxxx

WebDriverのエラーとchromedriverのエラーということがわかる。
で、エラーをそのままコピペして調べてみると、同じようなトラブルにあった方のページを発見。

『Ruby on Rails 5 速習実践ガイド』のRSpecの実行部分でテストが通らなく詰まっています。

https://teratail.com/questions/187391

なんと!作者の方からのコメントを発見!
アドバイス通り下記を試してみるも変わらず。

bundle exec chromedriver-helper&
bundle exec rspec

次いで下記リンクの、WSLからWindowsのchromedriverを参照するよう設定する方法が書かれていたのでこちらを試してみることに。

https://gist.github.com/upinetree/fb71a947cc100e7918b7b280485d620c#%E5%AF%BE%E7%AD%96a-chromedriver-helper-%E3%82%92%E4%BD%BF%E3%82%8F%E3%81%9A%E3%81%AB%E8%87%AA%E5%88%86%E3%81%A7-chromedriver-%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B

対策が2つあって

対策A. WSLからWindowsのchromedriverを参照するやり方

対策B. WSLからWindowsのchromedriverを参照するやり方があります。

対策Aのときはchromedriverのバージョンを使っているChromeのバージョンに合わせる必要があります。それを詳しく書いているページがあるのでリンクを載せておきます。

https://qiita.com/sasasoni/items/a690be4a6ada5ceb7d04

Aからやってみるとうまく行かない。
それでBを試すと無事エラー無く上手くいきました。

2日かかったけどちょっと感動。
しかしRSpec難しいです。
まだまだ精進します!

  • このエントリーをはてなブックマークに追加
  • LINEで送る

SNSでもご購読できます。

コメントを残す

*