RSpecでテスト実行時のブラウザの表示・非表示の設定
はじめに
RSpecでテストを実行する際に、ブラウザを表示するかしないかの設定について
設定方法
まず、下記のGemをインストールします。
group :test do gem 'capybara' gem 'webdrivers' end
続いて、specディレクトリ以下に'support'ディレクトリと、'driver_setting.rb'ファイルを作成します。
$ mkdir spec/support $ touch spec/support/driver_setting.rb
続いて、rails_helper.rbの20行目あたりにある、下記の部分のコメントアウトを外します。
Dir[Rails.root.join('spec', 'support', '**', '*.rb')].each { |f| require f }
この部分でsupportディレクトリ配下のファイルを読み込んでいます。
最後に、'driver_setting.rb'ファイルにテスト実行時のブラウザの有無について記載します。
RSpec.configure do |config| config.before(:each, type: :system) do # driven_by(:rack_test) # ステータスコードの確認 # driven_by(:selenium_chrome) # ブラウザ表示 driven_by(:selenium_chrome_headless) # ブラウザ非表示 end end
ブラウザの表示・非表示に応じて、対象の部分をコメントインしてください。
上記の場合は、テスト実行時にブラウザが非表示になっています。