我使用rails 4和capybara 2.1.0和rspec 2.0来开发用户注册模型
这是我的规范的内容
visit register_path
fill_in 'user[full_name]', with: "xxxx"
click_button 'Register'
expect(page).to find_link("Send hosting request")
点击注册按钮后在注册表单上我正在创建一个用户并将它们重定向到那个用户显示模板上的user / 1
这是节目模板
<div>
<strong>Full Name</strong>
<%= @user.own_profile.full_name %>
</div>
<%= link_to 'Send hosting request', root_path %>
但是当我运行测试时,我得到错误,说找不到链接
1) Register Page Create User
Failure/Error: find_link("Send hosting request")
Capybara::ElementNotFound:
Unable to find link "Send hosting request"
# ./spec/integration/register_page_spec.rb:22:in `block (2 levels) in <top (required)>'
# -e:1:in `<main>'
我不明白为什么当我在用户页面上有链接时,这个测试失败了
我现在能做什么
当我使用page.has_content?('发送托管请求')时,它返回true
答案 0 :(得分:0)
尝试:
expect(page).to have_link("Send hosting request")
它应该有用......
我发现此链接很有用http://rubydoc.info/github/jnicklas/capybara/Capybara/RSpecMatchers
摆动