Ruby on rails 命名错误:未定义的方法';环境';对于ActionMailer::TestCase中的nil:NilClass
我从RubyonRails开始,创建了一个示例应用程序。在这个应用程序中,我有一个邮件类和一个测试生成的邮件类。 除了ActionMailer::TestCase中的测试外,我设法让所有测试都正常工作。 每次运行测试时,我都会收到一条错误消息: NoMethodError:未定义nil:NilClass的方法“env” 我生成的mailer测试方法如下所示:Ruby on rails 命名错误:未定义的方法';环境';对于ActionMailer::TestCase中的nil:NilClass,ruby-on-rails,ruby,testing,actionmailer,Ruby On Rails,Ruby,Testing,Actionmailer,我从RubyonRails开始,创建了一个示例应用程序。在这个应用程序中,我有一个邮件类和一个测试生成的邮件类。 除了ActionMailer::TestCase中的测试外,我设法让所有测试都正常工作。 每次运行测试时,我都会收到一条错误消息: NoMethodError:未定义nil:NilClass的方法“env” 我生成的mailer测试方法如下所示: test "new_project" do mail = ProjectMailer.new_project assert
test "new_project" do
mail = ProjectMailer.new_project
assert_equal "New project", mail.subject
assert_equal ["to@example.org"], mail.to
assert_equal ["from@example.com"], mail.from
assert_match "Hi", mail.body.encoded
end
我的测试助手中有
class ActionController::TestCase
include Devise::TestHelpers
end
class ActionMailer::TestCase
include Devise::TestHelpers
end
class ActiveSupport::TestCase
ActiveRecord::Migration.check_pending!
include Devise::TestHelpers
fixtures :all
end
有人知道如何解决这个问题吗?你包括
designe::TestHelpers
。
您应该为真正需要设计的测试创建特定的test\u helper
关于stackoverflow的同样问题
我的意见是:您不应该使用Desive,因为它会阻止为项目编写测试