Ошибки тайм-аута при выполнении тестов Cucumber/Watir

Я надеялся, что кто-нибудь сможет помочь мне с проблемой, с которой я сталкиваюсь при выполнении тестов на огурец.

Я получаю следующую ошибку:

  Timeout::Error (Timeout::Error)
      C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:146:in `rescue in rbuf_fill'
      C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:140:in `rbuf_fill'
      C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:122:in `readuntil'
      C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:132:in `readline'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:2562:in `read_status_line'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:2551:in `read_new'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:1319:in `block in transport_request'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:1316:in `catch'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:1316:in `transport_request'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:1293:in `request'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:1286:in `block in request'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:745:in `start'
      C:/Ruby193/lib/ruby/1.9.1/net/http.rb:1284:in `request'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/remote/http/default.rb:82:in `response_for'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/remote/http/default.rb:38:in `request'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/remote/http/common.rb:40:in `call'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/remote/bridge.rb:598:in `raw_execute'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/remote/bridge.rb:576:in `execute'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/remote/bridge.rb:242:in `getScreenshot'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:34:in `screenshot_as'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in `block in save_screenshot'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in `open'
      C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.25.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in `save_screenshot'

Кто-нибудь знает, что вызывает это?

Эта ошибка возникает случайным образом во время выполнения моего набора тестов. В наборе у меня было бы около 150 сценариев, и я видел, как эта ошибка возникает на разных этапах. Например, это может произойти в сценарии 50 или сценарии 100. Я запускаю свои тесты через файл rake из Jenkins или через окно cmd, но ошибка возникает, если я использую любой метод.

Наши тестовые сайты здесь могут быть немного ненадежными, и, вероятно, следует ожидать странного тайм-аута здесь и там. Однако, как только эта ошибка начнет возникать, все другие тесты, следующие за тестом, в котором произошла ошибка, будут иметь ту же проблему. Ни один из моих сценариев не зависит друг от друга. Каждый сценарий обычно начинается с шагаI go to the homepage-на этом шаге в моем файле .rbя включил @browser.cookies.clear, поэтому не должно быть никаких данных, оставшихся от предыдущего сценария.

Кто-нибудь еще сталкивался с этим, и если да, то какие шаги вы предприняли для его сортировки?

8
задан Željko Filipin 17 August 2012 в 12:02
поделиться