57388


現在、Ubuntuのdocker上にrails 5.1.7の開発環境を構築しています。  
そしてその上でjsを含んだViewテストをする為に、system
testのテスト環境を構築しているのですが、インストールと設定が上手くいかずに困っています。

まずエラー内容を説明させていただきます。

[code]

    rspec spec/views/hoge/index_spec.rb
    
[/code]

このコマンドを実行すると、

[code]

              ArgumentError:
                unknown driver: :headless_chrome
    
[/code]

というエラーが出ます。

私はネットの記事で調べheadless_chromeでテストする為にrails_helper.rbに対して以下の行を追加しました。

[code]

      config.before(:each) do |example|
        if example.metadata[:type] == :system
          driven_by :selenium, using: :headless_chrome, screen_size: [1400, 1400]
        end
      end
    
[/code]

またdocker上のubuntuにchromedriverをインストールしました。

[code]

    # chromedriver --version
    ChromeDriver 76.0.3809.68 (420c9498db8ce8fcd190a954d51297672c1515d5-refs/branch-heads/3809@{#864})
    
[/code]

どの様にすればこのエラーを解決できるでしょうか？  
ご回答いただけると助かります。


CC BY-SA 4.0
2019-08-15T09:51:22.413
57375
2019-08-16T01:24:46.443
15186
question
ruby-on-rails rspec
railsのsystem testでheadless_chromeを使いたい


ドライバの指定がrailsのバージョンで異なるようです。  
以下のようにするとどうでしょうか？

[code]

          driven_by :selenium_chrome_headless, screen_size: [1400, 1400]
    
[/code]

参考  
<https://qiita.com/jnchito/items/c7e6e7abf83598a6516d#%E3%83%98%E3%83%83%E3%83%89%E3%83%AC%E3%82%B9%E3%83%A2%E3%83%BC%E3%83%89%E3%81%AEchrome%E3%81%A7%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B>


CC BY-SA 4.0
2019-08-16T01:24:46.443
57388
2019-08-16T01:24:46.443
9608
57375
answer