LoginSignup
5
2

More than 5 years have passed since last update.

WSL上でRspecのSystem Specを使った時のエラー

Last updated at Posted at 2019-05-11

現場RailsでWSLの環境上でRspecの章を進めているときにエラーに躓いたのでメモ

環境

ruby 2.5.1
rails 5.2.3
WSL(Ubuntu18.04)
Chromeブラウザ バージョン: 74.0.3729.131

ggると同じ症状の方が見当たりました

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

上記のteratailの回答で、こちらのサイトを参考にされていて、

WSL Ubuntu 上で chromedriver を使った System Spec を動かす

上記のサイトの方法を引用します

対策A. chromedriver-helper を使わずに、自分で >chromedriver を設定する
chromedriver-helper を Gemfile から削除。

- gem 'chromedriver-helper'
chromedriver.exe を直接ダウンロード。

http://chromedriver.chromium.org/downloads

適当なところへ配置。今回は C:\Program >Files\chromedriver_win32\chromedriver.exe とした。

パスを Selenium Webdriver に教えてあげる。

# spec/spec_helper.rb
require 'selenium-webdriver'
Selenium::WebDriver::Chrome.driver_path = "/mnt/c/Program Files/chromedriver_win32/chromedriver.exe"

注意!

このとき、インストールするchromedriverのバージョンは自分のインストールしてるchromeのバージョンに合わせる
「chromeブラウザのヘルプ→Google Chromeについて」で、ブラウザのバージョンがわかる。
image.png

例:バージョン「74....」だったから、74.xxxのchromedriverを入れる

もしバージョン違いをいれてもこんな感じでエラーメッセージが出てくるからわかりやすいはず
例:バージョン74.xのブラウザを使っているのに75.xのchromedriverを入れてしまった場合

Selenium::WebDriver::Error::SessionNotCreatedError:
            session not created: This version of ChromeDriver only supports Chrome version 75
5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2