Ruby on rails RubyonRails:在功能测试中模拟路由

Ruby on rails RubyonRails:在功能测试中模拟路由,ruby-on-rails,ruby-test,Ruby On Rails,Ruby Test,我在routes.rb文件中有一个路由: map.connect 'login', :controller => 'users', :action => 'login' 我有一部分在视图中呈现为: login_path 该视图在控制器的功能测试中被调用 但是,在功能测试中,我得到了错误: ActionView::TemplateError: undefined local variable or method `login_path' for #<ActionView::B

我在routes.rb文件中有一个路由:

map.connect 'login', :controller => 'users', :action => 'login'
我有一部分在视图中呈现为:

login_path
该视图在控制器的功能测试中被调用

但是,在功能测试中,我得到了错误:

ActionView::TemplateError: undefined local variable or method `login_path' for #<ActionView::Base:0x4762c90>
ActionView::TemplateError:未定义的局部变量或方法“login\u path”#
1) 在考试中模仿它的最好方式是什么


2) 这是否表明存在设计缺陷

map.connect
将添加一条未命名的路线。您在
路线中可能需要的是:

map.login 'login', :controller => 'users', :action => 'login'
这将为您创建命名路由
login\u path
login\u url