2014-10-14 35 views
13

Selenium'daki zaman aşımı hatalarıyla ilgili birkaç ileti gördüm. Bu benim test paketini kullanılamaz hale getirdiği için gittikçe daha dayanılmaz bir hal alıyor. Şu anda geliştirilmekte olan bir web sayfasını test ediyorum.Net :: ReadTimeout (Net :: ReadTimeout) Selenium Ruby

Her zaman firefox ve selenium webdriver güncellemesine kadar çalışan 300 test senaryosundan oluşan bir regresyon paketine sahibim. Şimdi hemen hemen her diğer test için:

Net::ReadTimeout (Net::ReadTimeout) hataları.

Bu rastlantı olamaz. Ani zaman aşımı sorunlarına neyin neden olabileceğini bilen var mı? Webdriver ve firefox'un önceki sürümlerine geri dönmeyi denedim.

+0

FF32 ve 'selenium-webdriver'-gem v2.43.0 ile benim için tekrar çalışmaya başladı. Hangi versiyonları kullanıyorsunuz? – tessi

+0

FF32.0.3 ve webdriver 2.43.0 kullanıyorum. – Tom

+0

Özür dilerim, o zaman şansım yok. Benim FF 32.0.3 çalışmaktadır (Ubuntu 14.04 üzerinde). – tessi

cevap

8

Varsayılan zaman aşımı 60 saniyedir.

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 
8

aralıklı başarısız gözlük için bir yeniden deneme seçeneği ekler RSpec::Retry kullanmanın bir başka seçeneği: denemek için bir şey bu kadar çözülüp çözülmediğini görmek için internal timeout ayarlamaktır.

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 
+0

Sadece Codeship üzerinde pesky Net :: ReadTimeout hataları için rspec-retry gem ekledi ve hile yaptım öneririz! – randallreedjr

+0

Bu gem, benim için istisna artırır bkz: https://github.com/NoRedInk/rspec-retry/issues/73 – lacostenycoder