ruby - rails - capybara selenium
Net:: ReadTimeout(Net:: ReadTimeout) Selenium Ruby (2)
Otra opción para usar RSpec :: Retry, que agrega una opción de reintento para las especificaciones que fallan intermitentemente.
require ''rspec/retry''
RSpec.configure do |config|
# show retry status in spec process
config.verbose_retry = true
# Try twice (retry once)
config.default_retry_count = 2
# Only retry when Selenium raises Net::ReadTimeout
config.exceptions_to_retry = [Net::ReadTimeout]
end
He visto algunas publicaciones relacionadas con errores de tiempo de espera dentro de Selenium. Esto se está volviendo cada vez más insoportable ya que está volviendo inutilizable mi paquete de prueba. Estoy probando una página web actualmente en desarrollo.
Tengo un conjunto de regresión de alrededor de 300 escenarios de prueba que siempre ha funcionado hasta la última actualización de Firefox y Selenium Webdriver. Ahora para casi cualquier otra prueba que obtengo:
Net::ReadTimeout (Net::ReadTimeout)
errores.
Esto no puede ser una coincidencia ¿Alguien sabría lo que podría estar causando los problemas repentinos de tiempo de espera? Intenté volver a las versiones anteriores de webdriver y firefox.
El tiempo de espera predeterminado es de 60 segundos. Una cosa para intentar es ajustar el tiempo de espera interno para ver si eso lo soluciona:
Capybara.register_driver :selenium do |app|
profile = Selenium::WebDriver::Firefox::Profile.new
client = Selenium::WebDriver::Remote::Http::Default.new
client.timeout = 120 # instead of the default 60
Capybara::Selenium::Driver.new(app, browser: :firefox, profile: profile, http_client: client)
end