I\'ve seen a few posts related to timeout errors within Selenium. This is becoming more and more unbearable as it\'s rendering my test pack unusable. I\'m testing a webpag
The default timeout is 60 seconds. One thing to try is to adjust the internal timeout to see if that fixes it:
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
Another option to use RSpec::Retry which adds a retry option for intermittently failing specs.
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