为什么Rails在rake测试任务期间在开发模式下运行?

时间:2017-10-19 18:04:22

标签: ruby-on-rails ruby rake

为什么以下Rake任务在Rails的开发环境中运行?

namespace :app_tests do
  desc "Run unit tests."
  task unit: [:environment] do
    RAILS_ENV = "test"
    Rails.env = "test"
    system "rake test RAILS_ENV=test"
  end
end

由于缺少(测试组)依赖项而导致require错误,结果是因为app_tests:unit在使用bundle exec rake app_tests:unit运行时在Rails的开发环境中运行。< / p>

如何强制此任务在Rails的测试环境中运行?

1 个答案:

答案 0 :(得分:1)

默认情况下运行开发环境,您需要明确声明测试环境 rspec/core

您可以通过执行类似于<property name="hibernate.connection.password"/></property> here

的操作来强制执行任务中的env var