所以我希望wait
直到显示提醒,然后通常switch
提醒并get text
提供了Java解决方案 Selenium 2 (WebDriver): check that text exists before calling Alert.getText()
目前我使用sleep
,但每个人都知道这有多糟糕。
这就是我所拥有的 -
sleep 3
a = $driver.switch_to.alert
begin
a.text == 'Your alert here.'
rescue
verify { assert_match "true","false","The alert failed to be displayed"}
end
a.accept
我正在寻找像
这样的东西$wait.until { a = $driver.switch_to.alert }
begin
a.text == 'Your alert here.'
rescue
verify { assert_match "true","false","The alert failed to be displayed"}
end
a.accept
但这不起作用,它基本上忽略了等待(我有30秒的等待顺便说一句)。
正如我所提到的,我需要知道如何在 RUBY - Test Unit
答案 0 :(得分:1)
没有方法可以等待警报出现。但您可以使用以下代码等待警报出现。一旦出现警报,它就会退出循环。
status=true
while (status)
alert = driver.switch_to.alert rescue "exception happened"
if (alert == "exception happened")
status = true
alert = "nothing happened"
else
status = false
end
end
答案 1 :(得分:0)
如果您使用watir和watir-webdriver,您可以执行类似$ browser.wait_unitil_present
的操作