运行rspec时Rufus调度程序任务被捕获

时间:2013-06-19 01:34:08

标签: rspec-rails rufus-scheduler

我有一个使用rufus调度程序每1分钟运行一次的计划任务。它的执行没有问题。但是当我尝试运行rspec时,任务作为其中的一部分运行,并且不让rspec完成。如何阻止它作为规范的一部分被选中

1 个答案:

答案 0 :(得分:3)

可能类似于您的调度程序初始化程序:

if Rails.env.production?
  # start scheduler and schedule stuff...
end

修改

如果你想避免在有Rspec的情况下运行调度程序,你可以

if !defined?(Rspec)
  # start scheduler and schedule stuff...
end

这有点悲伤提在代码本身的测试框架。最好说“让我们不在测试模式下运行调度程序并执行:

if !Rails.env.test?
  # start scheduler and schedule stuff...
end

这样调度程序将在生产和开发中运行(或者任何不测试的环境)。