В моем файле spec_helper у меня есть:
Capybara.javascript_driver = :webkit
У capybara_webkit появилась опция ignore_ssl_errors, которую я хочу использовать.Как мне указать это в моем spec_helper?
ignore_ssl_errors
На момент написания (capybara-webkit 1.7.1) конфигурация, похоже, была упрощена:
Capybara::Webkit.configure do |config| config.ignore_ssl_errors end
(источник)
Вот как зарегистрировать драйвер: webkit с опцией: ignore_ssl_errors.
Capybara.register_driver :webkit do |app| Capybara::Driver::Webkit.new(app, :ignore_ssl_errors => true) end
Как говорит @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
Каким-то образом приведенные выше register_driver примеры не работают с Capybara 1.1.4.Пример ниже взят из капибары browser_spec.rb.
register_driver
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
При создании нового объекта webkit вы можете использовать это, чтобы игнорировать ошибки ssl
Capybara::Driver::Webkit.new({ :ignore_ssl_errors => true})