Then /^I should be on the free signup page$/ do
*current_path.should == free_signup_path*
end
Then /^I should be on the free signup page$/ do
*visit free_signup_path*
end
这两者有什么区别?
答案 0 :(得分:1)
chrome.exe --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:8080
告诉浏览器转到新网址,并会向正在测试的应用发起获取请求。 #visit
可让您阅读浏览器所在的当前位置。
注意:在验证当前路径时,您应该停止使用#current_path
,而是使用current_path.should == some_path
。 have_current_path匹配器包括等待行为,并且有助于使用具有JS功能的驱动程序使测试更加不稳定
答案 1 :(得分:0)
您使用visit
告诉rspec转到该路径以验证某些内容是否有效。例如:
it 'contains the new sessions form' do
visit 'sessions/new'
current_path.should have_content("Sign In")
end
当我的签到表单有一个按钮或其他任何文本'登录'时,此测试将通过。
您通常必须声明测试应该去哪条路径才能检测内容。
希望这有帮助!