我刚刚学习了RSPEC和Capybara,现在正在研究如何编写实际测试。
我尝试检查是否点击链接后会重定向到特定页面。以下是场景:
1)我有一个页面 /projects/list - 我有一个带有html“Back”的锚点,它链接到 /projects/show
以下是我在rspec中编写的测试
describe "Sample" do describe "GET /projects/list" do it "sample test" do visit "/projects/list" click_link "Back" assert_redirected_to "/projects/show" end end end
测试失败并显示失败消息如下:
Failure/Error: assert_redirected_to "/projects/show" ArgumentError: @request must be an ActionDispatch::Request
请给我建议,告诉我应该如何测试重定向以及我错在哪里?
projects_path
可能更好?顺便使用expect
符号。 - mswiebodahave_current_path
,您可以像这样使用它:expect(page).to have_current_path(some_other_page_path)
。 - bjliu