さまざまなブラウザーに対してテストを実行できるようにしたいと考えています。これを行うために次のメソッドを作成しました。これは私のenvファイルにあります。
def startbrowser()
if BROWSER == "ff"
Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app, :browser => :firefox )
end
else
Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app, :browser => :chrome )
end
end
session = startbrowser()
session.visit(@base_url)
ff が指定されている場合、上記は Firefox を起動するはずですが、これは私がほとんどのテストで使用しているブラウザーであるため、デフォルトで chrome に設定する必要があります。したがって、ターミナルで使用するコマンドは次のようになります: cucumber --tags @tests BROWSER=ff.
ただし、これは機能しません。エラーにはなりませんが、「BROWSER = ff」の部分を指定しなくても、常に Firefox が起動します。理論的には、デフォルトでクロムにする必要があります。メソッドにコマンドがない場合、Chrome ブラウザを正常に起動できますが、ブラウザを切り替えて、ジェンキンスからさまざまなジョブを実行できるようにしたいと考えています。ここで何が間違っているのか誰にもわかりませんか?
ありがとう!