当一个场景完成后,页面刷新(在网站中有一个javascript模式实现,然后刷新页面,询问用户“你确定要离开页面吗?”)。我需要确认一下模态。但是当我为此创建步骤时,我总是会收到此错误:
Then User clicks "Leave this page" button in the popup at online reg form
no alert open
(Session info: chrome=35.0.1916.114)
和代码
And(/^User clicks "([^"]*)" button in the popup at online reg form$/) do |button|
wait = Selenium::WebDriver::Wait.new
alert = wait.until { page.driver.browser.switch_to.alert }
alert.accept
end
有谁知道如何处理这个问题?
答案 0 :(得分:0)
您需要在javascript中覆盖确认对话方法以始终返回true
page.evaluate_script('window.confirm = function() { return true; }')
在触发弹出对话框的代码行之前使用此行,它将始终接受它,不再需要步骤:)