如何使用poltergeist测试确认对话框的内容?

时间:2013-12-10 04:07:46

标签: poltergeist

capybara-webkit驱动程序允许您测试应用程序触发的任何确认对话框消息的内容。有没有办法在恶作剧中做到这一点?

1 个答案:

答案 0 :(得分:0)

现在在poltergeist中不支持它,但有一种解决方法可以手动检查内容。

在我们的项目中,我们使用辅助方法来覆盖javascript confirm函数,存储消息并检查内容。

# helper method
def handle_js_confirm
  page.evaluate_script 'window.confirmMsg = null'
  page.evaluate_script 'window.confirm = function(msg) { window.confirmMsg = msg; return true; }'
  yield
  page.evaluate_script 'window.confirmMsg'
end

# usage
handle_js_confirm do
  click_link 'Trigger javascript confirm'
end.should == 'Are you sure?'

P.S。有一个github讨论这个问题,虽然这是一个2年的对话,你可以继续阅读https://github.com/jonleighton/poltergeist/issues/50