如何处理黄瓜+水豚+硒的模态

时间:2012-07-19 20:00:45

标签: ruby cucumber modal-dialog capybara

所以我试图点击忘记密码链接(导致模式弹出)并确认弹出链接,以便我可以对发出的电子邮件进行测试。

我的代码如下所示:

   page.find(:css, '#launch-modal-link').click  # code fails on this line, after clicking the link

   page.driver.browser.switch_to.alert.accept  # does not get to this line of code.

在尝试点击模式弹出窗口中的“确定”按钮时,我究竟做错了什么?

我是否需要在链接

周围添加try catch块(或Ruby中调用的任何内容)

1 个答案:

答案 0 :(得分:3)

解决了它 - 在其他地方找到答案。虽然它是一个黑客,而不是直接通过黄瓜完成的事情。

page.evaluate_script('window.confirm = function() { return true; }')

这是有效的,因为它会将confirm()写入始终返回true,而confirm函数似乎是一个常用的javascript函数,用于返回在对话框中单击的按钮。可能是错的。 (阅读正在执行的javascript函数。可能并不总是有效)