如何测试是否onclick:javascript:print()正在使用功能规范

时间:2016-05-23 04:13:56

标签: ruby-on-rails rspec capybara

我在页面中嵌入了一个链接:

<%= link_to "<span class ='glyphicon glyphicon-print'></span>".html_safe, '#', onclick: 'javascript:print()',
  class: 'print_link', id: 'printable' %>

如果我点击它,它会打开浏览器覆盖图来打印页面。在功能规范中,如何测试此浏览器叠加层是否打开?

1 个答案:

答案 0 :(得分:1)

这会打开Capybara无法访问的系统对话框,因此您无法对其进行检查。对于大多数驱动程序,您可以通过执行类似

的操作来验证onclick属性的值
expect(find(:link, 'printable')['onclick']).to eq 'javascript:print()'

将使用正确的点击处理程序验证链接是否存在,但验证实际行为确实不可能