「Failed to find Chrome binary」への対処

今回はrspecsystem_specをを導入するときの、エラーです。

「Failed to find Chrome binary」への対処

結論から言うと、以下のようにgemファイルと、docker-compose.ymlファイルにてchromeDocker環境に入れてあげた結果、テストが行えるようになりました。

Gemfile
group :test do
  # Adds support for Capybara system testing and selenium driver
  gem 'capybara'

  # A browser automation framework and ecosystem
  gem 'selenium-webdriver'

  # Keep your Selenium WebDrivers updated automatically
  gem 'webdrivers', require: !ENV['SELENIUM_REMOTE_URL']
end
docker-compose.yml
version: '3'
services:
  app:
    build:
      context: .
    environment:
      SELENIUM_REMOTE_URL: http://webdriver_chrome:4444/wd/hub
    depends_on:
      - db
      - webdriver_chrome
    command: bin/rails s -b 0.0.0.0 -p 3000
  db:
    # ...
  webdriver_chrome:
    image: selenium/standalone-chrome

👇を参考にしました。

https://github.com/titusfortner/webdrivers/issues/148


結局Docker環境については別の領域になるため、別途chromeをインストールしてあげた環境を作る必要があると言うことだと思っています。

docker-compose.ymlではなく、Dockerfilechromeのインストールの記述を書いてあげることもできます。

Leave a Reply

Your email address will not be published.

CAPTCHA