2011-09-29 35 views

回答

0

正如答案所示,当模态警报/确认/提示对话框打开时,浏览器变得无响应。现在,尽管浏览器已经学会了显示非模态窗口,但Capybara仍然无法评估页面上下文中的任何代码。

由于链接的答案状态,只存根window.confirm方法。这是最稳定的方式。

您可以编写以下两个步骤中的水豚:

When /I ensure the confirm box returns OK/ do 
    page.evaluate_script('window.confirm = function() { return true; }') 
end 

When /I ensure the confirm box returns Cancel/ do 
    page.evaluate_script('window.confirm = function() { return false; }') 
end 

然后你就可以继续改写你的水豚的步骤,让你首先要确保你存根确认框,并然后你点击触发确认框的链接:

When I ensure the confirm box returns OK 
And I click on Remove 
Then ...