Как установить опцию ignore_ssl_errors для Capybara Webkit в spec_helper.rb - PullRequest
5 голосов
/ 22 октября 2011

В моем файле spec_helper у меня есть:

  Capybara.javascript_driver = :webkit

У capybara_webkit появилась опция ignore_ssl_errors, которую я хочу использовать.Как мне указать это в моем spec_helper?

Ответы [ 5 ]

3 голосов
/ 28 января 2016

На момент написания (capybara-webkit 1.7.1) конфигурация, похоже, была упрощена:

Capybara::Webkit.configure do |config|
  config.ignore_ssl_errors
end

(источник)

3 голосов
/ 01 августа 2012

Вот как зарегистрировать драйвер: webkit с опцией: ignore_ssl_errors.

Capybara.register_driver :webkit do |app|
  Capybara::Driver::Webkit.new(app, :ignore_ssl_errors => true)
end
2 голосов
/ 17 апреля 2013

Как говорит @hjblok, интерфейс изменился в последних версиях capybara-webkit.Вы можете немного упростить решение:

Capybara.register_driver :webkit_ignore_ssl do |app|
  Capybara::Webkit::Driver.new(app).tap {|d| d.browser.ignore_ssl_errors }
end
Capybara.javascript_driver = :webkit_ignore_ssl
2 голосов
/ 21 декабря 2012

Каким-то образом приведенные выше register_driver примеры не работают с Capybara 1.1.4.Пример ниже взят из капибары browser_spec.rb.

Capybara.register_driver :webkit_ignore_ssl do |app|
  browser = Capybara::Webkit::Browser.new(Capybara::Webkit::Connection.new).tap do |browser|
    browser.ignore_ssl_errors
  end
  Capybara::Webkit::Driver.new(app, :browser => browser)
end
Capybara.javascript_driver = :webkit_ignore_ssl
0 голосов
/ 25 октября 2011

При создании нового объекта webkit вы можете использовать это, чтобы игнорировать ошибки ssl

Capybara::Driver::Webkit.new({ :ignore_ssl_errors => true})
...