3

在使用 Devise 的 Rails 3.28 应用程序中,我设置了一个控制器来检查用户是否使用if user_signed_in?. 一旦测试达到这条线,我总是会undefined method 'authenticate!' for nil:NilClass出错。我想在没有用户登录的情况下测试一些代码。

我认为我需要根据此处的设计 Wiki 中指定的选项设置测试,但是,所有说明都与 rspec 相关。

特别是,我认为我需要具备以下条件才能在 minitest 中工作:

RSpec.configure do |config|
  config.include Devise::TestHelpers, :type => :controller
  config.extend ControllerMacros, :type => :controller
end

有没有人成功地设置这个让 Devise 与 minitest 一起工作?

4

1 回答 1

15

将以下内容添加到您的minitest_helper.rb文件中:

class MiniTest::Rails::ActionController::TestCase
  include Devise::TestHelpers
end
于 2012-11-21T17:05:00.747 回答