概要
RSpec実行時で下記のエラーが発生した時の対処法を記載する。
Selenium::WebDriver::Error::SessionNotCreatedError:
session not created: This version of ChromeDriver only supports Chrome version 74
(Driver info: chromedriver=74.0.3729.6 )
本エラーは、ChromeブラウザのバージョンとChromedriverのバージョンがあっていない場合に発生する。
Chromeブラウザのバージョンに合わせて、Chromedriverのバージョンを変えてあげればエラーを解消できる。
[2019/07/07 追記]
ブラウザとドライバのバージョンを揃える方法は、下記の2つがある。
1. 適切なバージョンのドライバをWebサイトから自分でダウンロードして配置する
2. ブラウザとドライバのバージョンを同期してくれるGem(webdrivers)を使って動悸する
本記事では、1の自分でwebサイトからドライバをダウンロードする方法を紹介する。
2のGemを使ったやり方は、下記の記事が参考になる。
https://qiita.com/jnchito/items/f9c3be449fd164176efa
特別な理由がない限り2を使うことを推奨する。簡単だし確実なので。
Chromeのバージョンを確認
Chromeを起動して[メニュー]→[ヘルプ]→[Google Chromeについて]でバージョンを確認できる。
適切なバージョンのChromeDriverを入手
下記のURLからダウンロードページにアクセスできる。
https://chromedriver.storage.googleapis.com/index.html?path=[ほしいバージョン]
今回欲しいのは「70.0.3538」なので、下記のURLを指定すればOK。
https://chromedriver.storage.googleapis.com/index.html?path=70.0.3538
ダウンロードリンクが表示されるので、自分のプラットホームにあわせたリンクを選択してChromedriverをダウンロードする。
Chromedriverを入れ替え
上記で取得したChromedriverでローカルPCのChromedriverを置き換える。
ローカルPCにあるChromedriverがどこにあるかは「which」コマンドで確認できる。
$ which chromedriver
Chromedriverを置き換えたら、以下のコマンドで入れ替わったことを確認する。
バージョンが70.0.3538になってればOK。
$ chromedriver -v
再度RSpecを実行
下記のコマンドでRSpecを実行。
エラーが出無くなればOK。
$ rspec
参考文献
以上です