我正在使用此脚本
通过rspec测试我的登录页面describe "Sessions" do
describe "GET /sessions/new" do
it "works! (now write some real specs)" do
# Run the generator again with the --webrat flag if you want to use webrat methods/matchers
post "/session/new", { :username => "user", :password => "pass" }
response.should redirect_to("/dashboard")
end
end
end
当我尝试这个时,rspec说:
ActionController::RoutingError:
No route matches [POST] "/session/new"
但是我知道/ session / new是一个有效的路由。另外,如果我只是尝试生成默认值get "sessions/new"
而不是post
或post_via_redirect
而不尝试测试用户名和密码,那么它可以正常工作。所以基本上,我只是想测试用户发布用户名和密码的登录页面。这里有什么我想念的吗?
答案 0 :(得分:0)
如果您使用的是restful route,'/ sessions / new'应该只响应GET请求。此URL用于向用户提供要提交的表单。
你应该POST到“/ sessions”而不是