我已经尝试修复这个错误很长时间了,但我似乎无法弄清楚它是什么。在此先感谢您的帮助!
我正在为带有 capybara 和 rspec 的 rails 应用程序编写测试,尝试单击导航栏中的元素,然后进行测试以确保页面正确,但似乎无论我如何告诉 capybara 单击该元素,它都可以找不到它。
...
subject { page }
describe 'when clicking Home link', :js do
before do
visit some_path
find('a', text: "Home").click
end
it { should have_selector('title', text: 'bla bla bla') }
end
...
我尝试了此代码的许多不同版本,包括
click_link('Home'),
click_on('Home'),
find('a.header-link.header-link-home', text: 'Home').click,
find_link(...).click,
click_button(...)
等等,以及有和没有:js,以及在不同的“内部”语句中,但我总是得到 Capybara::ElementNotFound: Unable to find css "a"。我还尝试将 capybara 的默认等待时间增加到 5 秒。
这是我试图点击的元素(根据页面的源代码)
<a class="header-link header-link-home" href="/">Home</a>
宝石版本:水豚 (1.1.4)、rspec (2.12.0)
非常感谢,我真的很感激!