我有一个网页,其中有一个onbeforeunload脚本,当用户采取可以离开当前页面的操作时会提示用户。
如何使用Watir与此弹出窗口进行交互?我目前的方法如下:
$ie.link(:text, 'Dashboard').click_no_wait
hwnd = $ie.enabled_popup(10)
assert(hwnd, 'The expected \'leave this page?\' popup was not shown')
win = WinClicker.new
win.makeWindowActive(hwnd)
win.clickWindowsButton_hwnd(hwnd, "OK")
问题是,如果我使用“click no wait”,则不会创建弹出窗口,并且测试会超时。如果我使用“click”,则会创建弹出窗口,但测试在打开后会挂起。
有什么建议吗?
答案 0 :(得分:0)
您想断言对话框消息吗?
我尝试了你的代码,却找不到解决方案
这是为了尝试捕捉对话框然后弹出,获得msg而5秒。每1秒轮询一次。
$ie.link(:text, 'Dashboard').click_no_wait
@autoit = WIN32OLE.new('AutoItX3.Control')
5.times do
if @autoit.WinWait('Windows Internet Explorer','',1)==1 then
@autoit.WinActivate('Windows Internet Explorer',"")
@dialog_text = @autoit.WinGetText('Windows Internet Explorer',"")
dialog_pop = "YES"
break
else
sleep(1)
dialog_pop = "NO"
end
end
答案 1 :(得分:0)