Capybara - 无法点击链接

时间:2015-07-23 14:21:21

标签: ruby rspec tdd capybara bdd

我正在使用Capybara 2.4.4点击链接。 html是这样的:

<a name="skiplink" id="skiplink" type="button" href="javascript:void(0);" onclick="skipForm(); return false;">salta</a>

Capybara命令:

find("a", :text => "salta").click
find('skiplink').click

两者都不起作用:

Failure/Error: find("a", :text => "salta").click
     NoMethodError:
       undefined method `empty?' for nil:NilClass

我已经从save_and_open_page输出中复制粘贴了html,因此它可能是正确的

我使用默认驱动程序(没有硒)

由于

1 个答案:

答案 0 :(得分:1)

以下任何一项都应该有效

click_on('salta')
find(:css, '#skiplink').click   # the :css is only necessary if you've changed capybaras default selector

你的发现(&#34; a&#34;,:text =&gt;&#34; salta&#34;)。点击也应该工作 - 但是当使用capybaras默认驱动程序(racktest)时点击javascript链接isn&由于驱动程序不支持javascript,因此无法正常工作。你需要切换到支持javascript的不同驱动程序(selenium,capybara-webkit,poltegeist等)