Ruby on rails 用shoulda设计测试装置
我在使用shoulda测试Desive时遇到一些困难:Ruby on rails 用shoulda设计测试装置,ruby-on-rails,functional-testing,shoulda,devise,Ruby On Rails,Functional Testing,Shoulda,Devise,我在使用shoulda测试Desive时遇到一些困难: 2) Error: test: handle :index logged as admin should redirect to Daily page. (Admin::DailyClosesControllerTest): NoMethodError: undefined method `env' for nil:NilClass devise (1.0.6) [v] lib/devise/test_helpers.rb:52:in `s
2) Error:
test: handle :index logged as admin should redirect to Daily page.
(Admin::DailyClosesControllerTest):
NoMethodError: undefined method `env' for nil:NilClass
devise (1.0.6) [v] lib/devise/test_helpers.rb:52:in
`setup_controller_for_warden'
我的测试助手中有以下内容:
include Devise::TestHelpers
想法?
提前感谢,
Cristi不在test_helper.rb文件中,而是在各个测试类的范围内。正如他们的自述所示:
class ActionController::TestCase
include Devise::TestHelpers
end
我不确定rspeicher是否完全正确,但是:
class ActionController::TestCase
include Devise::TestHelpers
end
在test_helper.rb的最底部(在类ActiveSupport::TestCase
的结尾之后是),应该可以工作。到目前为止,我已经完成了3到4个项目,包括我今天正在做的一个项目
然后,如果在测试中使用fixture,则可以使用登录用户(:one)
。除非阿尔达把事情搞砸了 那不一样。他只是将“include designe::TestHelpers”放在他的test_helper.rb文件的基本作用域中,而不是放在TestCase类中。这正是自述文件所说的。对于“在类ActiveSupport::TestCase结束后是”的+1