0

我正在使用此脚本通过 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 是一条有效的路线。此外,如果我只是尝试生成默认的 ie get "sessions/new",而不是尝试postpost_via_redirect不尝试测试用户名和密码,它工作正常。所以基本上,我只是想测试用户发布用户名和密码的登录页面。我在这里缺少什么吗?

4

1 回答 1

0

如果您使用的是 restful 路由,“/sessions/new”应该只响应 GET 请求。此 URL 用于将表单提供给用户提交。

您应该改为发布到“/会话”

于 2012-06-09T01:08:43.847 回答