我剛開始學的Watir ......我堅持這一點:的Watir和javascript彈出窗口
我儘量讓的Watir點擊(和閱讀內容)這個JavaScript彈出窗口的:
http://www.w3schools.com/js/tryit.asp?filename=tryjs_alert
我的Watir代碼如下所示:
require 'watir'
b = Watir::Browser.start "www.w3schools.com/js/tryit.asp?filename=tryjs_alert"
b.maximize
b.frame(:name, "view").button(:text, "Show alert box").click
b.javascript_dialog.button('OK').click
..但它不工作,在彈出的窗口中,的Watir不點擊 「確定」 按鈕。我知道Watir-Webdriver可以處理彈出窗口(「browser.alert.ok」),但是可以使用「經典的」僅限IE的Watir做到這一點(沒有任何複雜的黑客攻擊,使用AutoIt/Sikuli等)?
編輯:我能與這條線完全去除彈出窗口:
b.frame(:name, "view").execute_script("window.alert = function() {}")
聊勝於無
,現在測試不會掛彈出窗口,但我現在還不能確認/讀取彈出窗戶...
是的,這可能是解決方案......只有一個「小」問題:使用「click_no_wait」徹底崩潰Ruby,Windows關閉它,並想向微軟發送錯誤報告......(我使用XP SP3, Ruby 1.9.3p194,Watir 3.0.0。) – apk 2012-07-25 14:22:05
我使用的是Win7,Ruby 1.8.7,Watir 3.0.0。 – 2012-07-25 14:28:01
將Ruby降級到1.9.2後,它不再在「click_no_wait」上崩潰。但是,Watir仍然拒絕點擊彈出窗口。 – apk 2012-07-25 15:18:47