Rspec и Chrome / безголовый флаг - PullRequest
0 голосов
/ 31 января 2019

У меня безголовый Chrome и Chrome, работающие на моих тестах Rspec.Я хочу, чтобы флаг переключался между ними, чтобы я мог видеть, что тесты происходят, когда я хочу, и скрывать их, когда я этого не делаю.Как я могу реализовать что-то вроде:

rspec --headless

Прямо сейчас у меня просто есть этот секрет, привязанный к .env var:

Capybara.javascript_driver = Rails.application.secrets.headless ? :headless_chrome : :chrome

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019

Хм, я лично использую этот код для регистрации драйвера:

Capybara.register_driver :chrome do |app|
  capabilities = Selenium::WebDriver::Remote::Capabilities.chrome(
    chromeOptions: {
      args: [
        ('headless' if ENV.fetch('HEADLESS', '1') == '1')
      ].compact
    }   
  )

  Capybara::Selenium::Driver.new(
    app,
    browser: :chrome,
    desired_capabilities: capabilities
  )
end

, затем в .env вы можете установить переменную как HEADLESS или нет по умолчанию, а затем, если вы хотите перезаписать ее, просто введитеHEADLESS=0 rspec

0 голосов
/ 01 февраля 2019

Ну, переопределение env var работает, вот и все.

HEADLESS=true rspec
...