我想验证弹出消息的内容"只有整数"提交表格后。以下是提交表单的代码:
fill_in 'allocationRegContrib[12].newFundValue', :with => workbook.cell(2,3)
find(:xpath, '//*[@id="allocationChangeDetails"]').click
sleep 5
expect(page).to have_content("Only Whole numbers")
第4行是我要在弹出窗口中查看内容的地方。我收到错误"意外警报打开"
然后我尝试以另一种方式在我接受弹出窗口的位置添加第4行。以下是代码:
Then (/^I accept popup for fractional part$/) do
expect(page).to have_content("Only Whole numbers")
page.driver.browser.switch_to.alert.accept
end
这里我也得到了同样的错误。请建议
答案 0 :(得分:1)
要使用水豚以交叉驱动方式执行此操作,您需要稍微更改步骤,因为触发警报的步骤需要知道它即将到来
When (/^I do something and accept popup for fractional part$/) do
accept_alert "Only Whole numbers" do
# the do something code that triggers the alert box
end
end
如果你在多个地方使用接受弹出窗口,你可以按照
的方式做一些事情。When (/^(.+) and accept popup for fractional part$/) do |step_name|
accept_alert "Only Whole numbers" do
step(step_name)
end
end
或更一般地
When (/^(.+) and accept "([^"]+)"$/) do |step_name, alert_text|
accept_alert alert_text do
step(step_name)
end
end