Ruby Rake::TestTask未在另一个任务中工作

Ruby Rake::TestTask未在另一个任务中工作,ruby,minitest,rake-task,Ruby,Minitest,Rake Task,我们使用minitest/ruby开发了几个测试用例 现在我们正在尝试使用rake文件运行它。 如果我们在代码下面运行,它就可以正常工作 require 'rake' require 'rake/testtask' Rake::TestTask.new do |t| t.test_files = FileList['../Home/*TC1.rb'] t.verbose = true end 但是我们将上面的代码放在单独的任务中,然后id不运行测试 task :m

我们使用minitest/ruby开发了几个测试用例 现在我们正在尝试使用rake文件运行它。 如果我们在代码下面运行,它就可以正常工作

require 'rake'
require 'rake/testtask'

Rake::TestTask.new do |t|   
    t.test_files = FileList['../Home/*TC1.rb'] 
    t.verbose = true  
end
但是我们将上面的代码放在单独的任务中,然后id不运行测试

task :myCustom_task do 
  Rake::TestTask.new do |t|   
    t.test_files = FileList['../Home/*TC1.rb']         
    t.verbose = true
  end    
end 
然后我们通过下面的命令运行它

rake myCustom_task
并且它不会运行测试,而且在使用--trace选项运行时也不会显示任何错误


这种方法缺少什么?

为什么要将
TestTask
包装在常规
任务中?这毫无意义。我们有5个产品,每个产品有5个测试用例。有时我们希望为所有产品运行测试用例,有时只为一个产品运行测试用例。为了实现这一点,我们希望将命令行参数传递给TestTask。为了传递命令行参数,我们将TestTask包装到另一个任务中,因为我们没有找到任何其他方法将命令行参数发送到Rake::TestTask。有更好的方法来运行单个测试。Minitest内置了对运行单个测试文件的支持,还有一些gems允许您从一个文件运行单个测试。是的,我同意有其他方法可以运行单个测试。但是我们有不同的测试用例组合。这就是为什么我们要传递参数,然后在rake任务中构建test_文件,然后在TestTask中传递它。如果没有太多帮助,您是否可能没有从您认为的位置评估目录?在这两种情况下,我都会在赋值后调试t.test_files值,看看发生了什么。我也可能只是胡作非为,不尝试使用测试任务<代码>ruby-Itest…