测试佣金任务

col*_*rco 24 ruby testing rake

我正在开发一个依赖于许多自定义Rake任务的ROR应用程序.

测试它们的最佳方法是什么?

小智 17

就像是:

  def execute_rake(file,task)
    require 'rake'
    rake = Rake::Application.new
    Rake.application = rake
    Rake::Task.define_task(:environment)
    load "#{Rails.root}/lib/tasks/#{file}"
    rake[task].invoke
  end
Run Code Online (Sandbox Code Playgroud)

根据您的规格:

execute_rake("tags.rake","tags:popular")
Run Code Online (Sandbox Code Playgroud)


Oll*_*lly 16

耙子任务很难测试.最简单的解决方案是将逻辑移动到适当模型中的方法中.然后,您可以测试它,并从rake任务中调用该方法.