进行选择单选按钮的测试,然后单击“删除”按钮,弹出模式对话框/警告框。
我使用的是Cucumber,所以这里的步骤是如何工作的:
When /^i confirm the alert$/ do
Watir::Wait.until(timeout: 10) {@browser.alert.exists?}
puts "i see the alert"
@browser.alert.ok
end
我放入了懒惰的调试步骤,因为我认为这可能是浏览器/驱动程序问题。
我已经在Chrome中完成了这项工作,但对于我在这个特定脚本中所处的特定环境,它不是一个选项。
Firefox是我唯一的选择,这就是:
然后我收到找不到警报(Watir :: Exception :: UnknownObjectException)
我使用的是Firefox 45 ESR / Selenium Webdriver 3.0.5
不确定它是否与Firefox / Selenium兼容性问题有关?
点击警告确定按钮后,应用程序无法执行任何操作
答案 0 :(得分:1)
确保您使用的是Watir 6.2.1;我们刚刚发布了一个可以解决此问题的错误修复程序。
答案 1 :(得分:0)
找到修复!这很简单。我只需要将警报处理发送到Selenium而不是Watir。
而不是调用 Watir :: Alert 类:
@browser.alert.ok
我只需要让Selenium处理它。现在,这在FF和Chrome中都有效:
And(/^the user confirms the alert via selenium$/) do
popup = @browser.driver.switch_to.alert
popup.accept
end