I saw a similar trail before and 2 potential reasons for it:
1) gems such as FakeWeb and WebMock modify ruby โโhttp. Try to remove these gems and any similar ones that you can use to bully / block web requests.
2) I saw a case in a really busy system, where this timeout would occur somewhat randomly. In fact, the problem here was not a test, but a system and what worked on it. You can change the timeout used by the http library and continue testing.
Updated for Capybara: (from http://selenium.googlecode.com/svn/wiki/RubyBindings.wiki )
Capybara.register_driver :selenium_extended_http_timeout do |app| client = Selenium::WebDriver::Remote::Http::Default.new client.timeout = 240 Capybara::Selenium::Driver.new(app, :browser => :firefox, :http_client => client, :resynchronization_timeout => 60, :resynchronize => true) end Capybara.javascript_driver = :selenium_extended_http_timeout
There is a good chance that you do not need re-sync materials.
In both cases, this is due to the way selenium performs some of its internal messages. JsonWireProtocol.
source share