Utworzono instancję Watir::Browser
z zestawem chrome jako przeglądarką.Watir: błąd "nieoczekiwanego alarmu otwartego" podczas próby odświeżenia strony po ręcznym zamknięciu alarmu.
b = Watir::Browser.new :chrome
Jeśli ręcznie zamknąć alert, a następnie odśwież stronę, używając
b.refresh
następujący błąd jest generowany:
Selenium::WebDriver::Error::UnhandledAlertError: unexpected alert open
(Session info: chrome=28.0.1500.95)
(Driver info: chromedriver=2.2,platform=Windows NT 6.1 x86_64)
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/response.rb:51:in assert_ok'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/response.rb:15:in initialize'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/http/common.rb:59:in new'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/http/common.rb:59:in create_response'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/http/default.rb:66:in request'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/http/common.rb:40:in call'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/bridge.rb:634:in raw_execute'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/bridge.rb:612:in execute'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/remote/bridge.rb:210:in refresh'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.35.0/lib/selenium/webdriver/common/navigation.rb:38:in refresh'
from C:/ruby193/lib/ruby/gems/1.9.1/gems/watir-webdriver-0.6.4/lib/watir-webdriver/browser.rb:201:in refresh'
Kiedy zadzwonić b.alert.exists?
zwraca true
.
Próbowałem, patrząc na użyciu b.alert.initialize
, aby zresetować stan alertu, ale rzuca wyjątek.
Czy istnieje sposób na całkowite zresetowanie stanu obiektu przeglądarki?
samo tutaj alert nie działa ... Próbowałem z Firefox też nie wiele sukcesów. b.alert.exists? b.alert.ok Próbowałem wszystkiego na http://watirwebdriver.com/javascript-dialogs/ ale nie masz szczęścia? – Dakadaka
Nigdy nie rozwiązałem tego, obawiam się. – Castrohenge