我有一个简单的 Cucumber 测试,看看在输入无效凭据时,用户是否会被发送回注册页面。
我的最后一步如下所示:
Then /^I should be on the registration page$/ do
current_path.should == new_user_registration_path
end
但是,当有人提交表单并返回错误时,他们实际上最终会出现在“/users”上,而不是“/users/sign_up”
我假设这是因为 user_registration POST 方法映射到/users。但我不等待测试/users,因为理论上这可能是用户的索引,我不希望它成为错误页面。
是否有更好的方法来测试 Rails 中的表单错误?
最佳答案
您应该测试用户最终访问的页面是否包含错误文本。将 Cucumber 测试视为手动测试:表单提交后不会检查 url,但会查看页面内容以了解提交是否成功
关于ruby-on-rails - 使用 Cucumber 测试无效的表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11444303/