質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • Ruby

    9434questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Ruby on Rails 5

    3179questions

  • AWS(Amazon Web Services)

    2536questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

  • Cloud9

    551questions

    Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

  • RSpec

    236questions

    RSpecはRuby用のBDD(behaviour-driven development)フレームワークです。

ChromeDriverとChromeのバージョンの調整方法について。

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 895

amedama

score 0

前提・実現したいこと

現在、Railsを勉強しています。
現場で使えるRuby on Rails 5 速習実践ガイドという教材を進めています。
aws cloud9 を使ってRailsTutorialをしていたため、そのままawsで勉強を続けています。

その中で、新しくRSpecを用いてコードを書いています。
テストを作成し、rspecを実行したところで以下のエラーメッセージが出ました。

発生している問題・エラーメッセージ

Selenium::WebDriver::Error::UnknownError: unknown error: cannot find Chrome binary


これについては以下のページの内容を参考にしました。
参考: https://kuracux.hatenablog.jp/entry/2018/12/30/182617
Amazon LinuxにChromeが入っていないことが原因だと考えられます。
下記コマンドを実行し、インストールを行ないましょう。

$ curl https://intoli.com/install-google-chrome.sh | bash

これで解決したと思ったのですが、この後再度rspecを実行すると、

Selenium::WebDriver::Error::SessionNotCreatedError:
session not created: This version of ChromeDriver only supports Chrome version 74
(Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Linux 4.14.97-74.72.amzn1.x86_64 x86_64)


と出て、テストが実行できず、詰まってしまいました。

試したこと

エラー文から察するに
chromedriverとChromeのバージョンが違うので、それをあわせることが必要という解釈をしました。
自分なりに調べて、以下のページなどを参考に、Chromeのバージョンを74にあげる方法を模索しましたが、できませんでした。

参考:CircleCIのChromeとchromedriver-helperのchromedriverのバージョンを揃える
https://qiita.com/IYD37/items/a5a9eee71dde858d19d3

参考:CircleCIのChromeを最新版に
https://ryotah.hatenablog.com/entry/2017/01/16/214215

OSなど何か前提条件が自分と違うため、上手くいかなかったと思います。
ex.apt-getが使えないなど。

補足情報(FW/ツールのバージョンなど)

環境設定やOSについての知識が乏しく、この問題を解決するために必要な情報を判断することができなかったため、
自分がわかる範囲で手がかりになりそうな情報を以下に記載しました。

開発環境            AWS cloud9
データベース          PostgreSQL
Amazon Linux のバージョン  Amazon Linux AMI release 2018.03 

GemFile

source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }

ruby '2.5.1'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.2.1'
# Use postgresql as the database for Active Record
gem 'pg', '>= 0.18', '< 2.0'
# Use Puma as the app server
gem 'puma', '~> 3.11'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'mini_racer', platforms: :ruby

# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 4.0'
# Use ActiveModel has_secure_password
gem 'bcrypt', '~> 3.1.7'

# Use ActiveStorage variant
# gem 'mini_magick', '~> 4.8'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

# Reduces boot times through caching; required in config/boot.rb
gem 'bootsnap', '>= 1.1.0', require: false

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
  gem 'factory_bot_rails', '~> 4.11'
end

group :development do
  # Access an interactive console on exception pages or by calling 'console' anywhere in the code.
  gem 'web-console', '>= 3.3.0'
  gem 'listen', '>= 3.0.5', '< 3.2'
  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'
  gem 'spring-watcher-listen', '~> 2.0.0'
end

group :test do
  # Adds support for Capybara system testing and selenium driver
  gem 'capybara', '>= 2.15'
  gem 'selenium-webdriver'
  # Easy installation and use of chromedriver to run system tests with Chrome
  gem 'chromedriver-helper'
  gem 'rspec-rails', '~> 3.7'
end

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
gem 'slim-rails'
gem 'html2slim'
gem 'bootstrap'
gem 'rails_autolink'

教材と違う環境で進めているため、そもそも間違った環境を作ってしまっているのかもしれません。
また、ひとつ気がかりなのは、教材で出てきた「windowsであればUbuntuをインストールする」というところを飛ばした点です。
awsで勉強を進めていくのには関係がないんじゃないかなと考えたため、飛ばしましたが正しい判断だったのでしょうか...

その他解決に必要な情報があれば、教えていただけると幸いです。
まとまっていない質問になりましたが、どうぞよろしくお願いします。

最後まで読んでくださりありがとうございます。
お力添えよろしくお願いします。

 変更後

連絡お待たせしました。
ご助言通りに試した後、
Rspecを実行したところ、以下のエラーが起きました。

$  bundle exec rspec spec/system/tasks_spec.rb

Capybara starting Puma...
* Version 3.12.0 , codename: Llamas in Pajamas
* Min threads: 0, max threads: 4
* Listening on tcp://127.0.0.1:33295
/home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec: No such file or directory - google-chrome
/home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec: No such file or directory - google-chrome
F

Failures:

  1) タスク管理機能 一覧表示機能 ユーザーAがログインしているとき ユーザーAが作成したタスクが表示される
     Got 0 failures and 2 other errors:

     1.1) Failure/Error: visit login_path

          NoMethodError:
            undefined method `chomp' for nil:NilClass



          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:69:in `chrome_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:55:in `release_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:19:in `latest_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:37:in `desired_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:16:in `update'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/selenium.rb:7:in `driver_path'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/chrome/driver.rb:38:in `initialize'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `new'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `for'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver.rb:86:in `for'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:31:in `browser'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:58:in `visit'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:269:in `visit'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/dsl.rb:51:in `block (2 levels) in <module:DSL>'
          # ./spec/system/tasks_spec.rb:13:in `block (4 levels) in <top (required)>'

     1.2) Failure/Error:
            ver = case platform
                    when 'win'
                      chrome_on_windows
                    when /linux/
                      chrome_on_linux
                    when 'mac'
                      chrome_on_mac
                    else
                      raise NotImplementedError, 'Your OS is not supported by webdrivers gem.'
                  end.chomp

          NoMethodError:
            undefined method `chomp' for nil:NilClass



          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:69:in `chrome_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:55:in `release_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:19:in `latest_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:37:in `desired_version'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:16:in `update'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/selenium.rb:7:in `driver_path'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/chrome/driver.rb:38:in `initialize'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `new'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `for'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver.rb:86:in `for'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:31:in `browser'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:112:in `save_screenshot'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:709:in `block in save_screenshot'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:709:in `tap'
          # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:709:in `save_screenshot'

Finished in 0.91785 seconds (files took 1.09 seconds to load)
1 example, 1 failure

Failed examples:

rspec ./spec/system/tasks_spec.rb:19 # タスク管理機能 一覧表示機能 ユーザーAがログインしているとき ユーザーAが作成したタスクが表示 される

 

なるべく、自力で解決したいのですが、解決の糸口が見えません。
どこを修正すればよいかご助言いただけますか?

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • asm

    2019/03/25 22:26

    $ google-chrome-stable -version
    を実行した結果はどうなっていますか?

    キャンセル

  • amedama

    2019/03/25 22:36

    ありがとうございます。
    Google Chrome 73.0.3683.86
    となっています。

    キャンセル

回答 1

0

gem 'chromedriver-helper'

githubをみると

Deprecated in favor of the webdrivers gem.

となっています。

$HOME/.chromedriver-helperディレクトリがあるのならば削除し

Gemfileには代わりにgem "webdrivers", "~> 3.0"を記載しましょう。

こちらにはchromeのバージョンから使用するchromedriverのバージョンを決定する仕組みがあるようです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/03/26 00:14

    返信ありがとうございます!!
    私がタイミング悪くwindows10にアップグレードしてしまったので、
    直ぐにはできないのですが、終わり次第すぐ試してみたいと思います。
    後ほどご連絡します。

    キャンセル

  • 2019/03/26 01:03

    連絡お待たせしました。
    ご助言通りに試したところ、違うエラーが出てしまいました。

    ```
    $ find .chromedriver-helper

    .chromedriver-helper
    .chromedriver-helper/<?xml
    .chromedriver-helper/<?xml/linux64
    .chromedriver-helper/74.0.3729.6
    .chromedriver-helper/74.0.3729.6/linux64
    .chromedriver-helper/74.0.3729.6/linux64/chromedriver
    .chromedriver-helper/74.0.3729.6/linux64/chromedriver_linux64.zip
    .chromedriver-helper/.chromedriver-version
    ```

    chromedriver-helperのディレクトリを確認したので、削除しました。


    ```

    $ rm -r .chromedriver-helper

    find: `.chromedriver-helper': No such file or directory

    ```

    消せたことを確認しました。

    GemFile

    ```
    source 'https://rubygems.org&#039;
    git_source(:github) { |repo| "https://github.com/#{repo}.git" }

    ruby '2.5.1'

    # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
    gem 'rails', '~> 5.2.1'
    # Use postgresql as the database for Active Record
    gem 'pg', '>= 0.18', '< 2.0'
    # Use Puma as the app server
    gem 'puma', '~> 3.11'
    # Use SCSS for stylesheets
    gem 'sass-rails', '~> 5.0'
    # Use Uglifier as compressor for JavaScript assets
    gem 'uglifier', '>= 1.3.0'
    # See https://github.com/rails/execjs#readme for more supported runtimes
    # gem 'mini_racer', platforms: :ruby

    # Use CoffeeScript for .coffee assets and views
    gem 'coffee-rails', '~> 4.2'
    # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
    gem 'turbolinks', '~> 5'
    # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
    gem 'jbuilder', '~> 2.5'
    # Use Redis adapter to run Action Cable in production
    # gem 'redis', '~> 4.0'
    # Use ActiveModel has_secure_password
    gem 'bcrypt', '~> 3.1.7'

    # Use ActiveStorage variant
    # gem 'mini_magick', '~> 4.8'

    # Use Capistrano for deployment
    # gem 'capistrano-rails', group: :development

    # Reduces boot times through caching; required in config/boot.rb
    gem 'bootsnap', '>= 1.1.0', require: false

    group :development, :test do
    # Call 'byebug' anywhere in the code to stop execution and get a debugger console
    gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
    gem 'factory_bot_rails', '~> 4.11'
    end

    group :development do
    # Access an interactive console on exception pages or by calling 'console' anywhere in the code.
    gem 'web-console', '>= 3.3.0'
    gem 'listen', '>= 3.0.5', '< 3.2'
    # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
    gem 'spring'
    gem 'spring-watcher-listen', '~> 2.0.0'
    end

    group :test do
    # Adds support for Capybara system testing and selenium driver
    gem 'capybara', '>= 2.15'
    gem 'selenium-webdriver'
    # Easy installation and use of chromedriver to run system tests with Chrome
    # gem 'chromedriver-helper'
    gem 'webdrivers', '~> 3.0'
    gem 'rspec-rails', '~> 3.7'
    end

    # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
    gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
    gem 'slim-rails'
    gem 'html2slim'
    gem 'bootstrap'
    gem 'rails_autolink'

    ```


    その後、Rspecを実行したところ、以下のエラーが起きました。




    ```

    $ bundle exec rspec spec/system/tasks_spec.rb

    Capybara starting Puma...
    * Version 3.12.0 , codename: Llamas in Pajamas
    * Min threads: 0, max threads: 4
    * Listening on tcp://127.0.0.1:33295
    /home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec: No such file or directory - google-chrome
    /home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec: No such file or directory - google-chrome
    F

    Failures:

    1) タスク管理機能 一覧表示機能 ユーザーAがログインしているとき ユーザーAが作成したタスクが表示される
    Got 0 failures and 2 other errors:

    1.1) Failure/Error: visit login_path

    NoMethodError:
    undefined method `chomp' for nil:NilClass



    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:69:in `chrome_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:55:in `release_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:19:in `latest_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:37:in `desired_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:16:in `update'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/selenium.rb:7:in `driver_path'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/chrome/driver.rb:38:in `initialize'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `new'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `for'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver.rb:86:in `for'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:31:in `browser'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:58:in `visit'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:269:in `visit'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/dsl.rb:51:in `block (2 levels) in <module:DSL>'
    # ./spec/system/tasks_spec.rb:13:in `block (4 levels) in <top (required)>'

    1.2) Failure/Error:
    ver = case platform
    when 'win'
    chrome_on_windows
    when /linux/
    chrome_on_linux
    when 'mac'
    chrome_on_mac
    else
    raise NotImplementedError, 'Your OS is not supported by webdrivers gem.'
    end.chomp

    NoMethodError:
    undefined method `chomp' for nil:NilClass



    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:69:in `chrome_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:55:in `release_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/chromedriver.rb:19:in `latest_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:37:in `desired_version'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/common.rb:16:in `update'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/webdrivers-3.7.0/lib/webdrivers/selenium.rb:7:in `driver_path'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/chrome/driver.rb:38:in `initialize'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `new'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver/common/driver.rb:44:in `for'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/selenium-webdriver-3.14.0/lib/selenium/webdriver.rb:86:in `for'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:31:in `browser'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/selenium/driver.rb:112:in `save_screenshot'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:709:in `block in save_screenshot'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:709:in `tap'
    # /home/ec2-user/.rvm/gems/ruby-2.5.1/gems/capybara-3.6.0/lib/capybara/session.rb:709:in `save_screenshot'

    Finished in 0.91785 seconds (files took 1.09 seconds to load)
    1 example, 1 failure

    Failed examples:

    rspec ./spec/system/tasks_spec.rb:19 # タスク管理機能 一覧表示機能 ユーザーAがログインしているとき ユーザーAが作成したタスクが表示 される


    ```


    実行しようとしたspecの内容は以下です。

    ```
    require 'rails_helper'

    describe 'タスク管理機能', type: :system do
    describe '一覧表示機能' do
    before do
    user_a = FactoryBot.create(:user, name: 'ユーザーA', email: 'a@example.com') # ユーザーAを作成しておく
    FactoryBot.create(:task, name: '最初のタスク', user: user_a) # 作成者がユーザーAであるタスクを作成しておく
    end

    context 'ユーザーAがログインしているとき' do
    before do
    # ユーザーAでログインする
    visit login_path
    fill_in 'メールアドレス', with: 'a@example.com'
    fill_in 'パスワード', with: 'password'
    click_button 'ログインする'
    end

    it 'ユーザーAが作成したタスクが表示される' do
    # 作成済みのタスクの名称が画面上に表示されていることを確認
    expect(page).to have_content '最初のタスク'
    end
    end
    end
    end


    ```



    なるべく、自力で解決したいのですが、解決の糸口が見えません。
    どこを修正すればよいかご助言いただけますか?

    キャンセル

  • 2019/03/26 01:10

    返信コメントが見づらくなってしまったので、本文編集しました。

    キャンセル

  • 2019/03/26 01:13

    'Your OS is not supported by webdrivers gem.'とあるので、私の環境が原因でしょうか....?

    重ね重ね質問失礼します。

    キャンセル

  • 2019/03/26 02:09

    > /home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec: No such file or directory - google-chrome

    とのことなので

    alias google-chrome="google-chrome-stable"
    としてやればどうでしょうか?

    キャンセル

  • 2019/03/26 02:57

    ありがとうございます。
    同じエラーが出てうまくいきませんでした。
    解釈が間違っていたらすみません。


    $ alias google-chrome="google-chrome-stable"
    を打った後、

    $ google-chrome -version で確認すると
    Google Chrome 73.0.3683.86

    となり名前を付けるのに成功。
    再度Rspecを実行しましたが、同じく
    > /home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec: No such file or directory - google-chrome
    とエラーがでました。

    /home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec にgoogle-chromeのフォルダがあればいいという解釈であっていますか??

    だとすれば、どこから持ってこればいいのでしょうか?

    自分なりにgoggle-chromeがどこにあるか検索してみました。
    $ find / -name google-chrome 2> /dev/null
    /opt/google/chrome/google-chrome
    /var/tmp/yum-ec2-user-hrRIIX/x86_64/latest/google-chrome
    /var/lib/yum/repos/x86_64/latest/google-chrome
    /var/cache/yum/x86_64/latest/google-chrome
    /etc/cron.daily/google-chrome
    その結果いくつか google-chrome と名のついたファイルを見つけました。

    各ディレクトリの役割が理解できおらず、どうすればよいのかご教授お願い致します。

    キャンセル

  • 2019/03/26 04:07

    > /home/ec2-user/.rvm/gems/ruby-2.5.1/bin/rspec
    は実行しているスクリプトの名前です。
    > No such file or directory - google-chrome
    が発生しているエラーのメッセージなので、ファイルを移動する必要はないハズです。

    ありえそうなのが
    コンソールを2つ開いて片方でgoogle chromeのインストールもう片方でrspecの起動をやってるパターン

    springかなにかで環境変数がキャッシュされているパターン

    AWSにgoogle chromeをインストールするつもりでなにかを間違えてlocalに入れてたパターン

    キャンセル

  • 2019/03/26 13:16

    こんにちは。
    返信遅くなり申し訳ありません。

    ①再度確認しましたが、コンソールは一つで行っています。

    ②環境変数がキャッシュされているかどうかについては以下を試してみました。

    $ spring stop
    Spring is not running

    $ ps aux | grep spring
    ec2-user 5593 0.0 0.2 110516 2052 pts/1 S+ 12:59 0:00 grep --color=auto spring

    ③AWSにgoogle chromeをインストールするつもりでなにかを間違えてlocalに入れてたパターン はどうすれば起こってしまうのでしょうか?
    また、それを確認する方法はございますか?

    ちなみにgooglechromeのインストールは、
    ec2-user:~/environment/taskleaf $ curl https://intoli.com/install-google-chrome.sh | bash
    とアプリケーションのディレクトリで行いました。
    これが問題だったということでしょうか??

    キャンセル

  • 2019/03/26 19:48

    うーん・・・問題ないように見えますね
    ちょっとわかりません。

    キャンセル

  • 2019/03/26 20:04

    そうですか...
    色々教えていただき、ありがとうございます。

    awsでの学習は一旦保留して、新しい環境でやってみます。

    キャンセル

同じタグがついた質問を見る

  • Ruby

    9434questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Ruby on Rails 5

    3179questions

  • AWS(Amazon Web Services)

    2536questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

  • Cloud9

    551questions

    Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

  • RSpec

    236questions

    RSpecはRuby用のBDD(behaviour-driven development)フレームワークです。