rake test无法识别测试文件夹中的新文件夹

时间:2014-05-06 10:56:06

标签: ruby-on-rails ruby unit-testing tdd rake

当我运行rake test时,它不会在我创建的新文件夹中运行测试。

默认情况下,Rails在测试文件夹中有这个文件夹:
 enter image description here

当我运行测试时,即rake test,它会测试测试文件夹的内容。

我在测试文件夹中添加了一个api文件夹 enter image description here

执行此操作时,会测试api文件夹的内容:rake test:run TEST=test/api/users_test.rb

但是,当我执行rake test时,它不会测试api文件夹的内容。如何配置?

1 个答案:

答案 0 :(得分:3)

rake test:all应该在测试文件夹的子目录中运行所有测试,甚至是非默认的测试。

如果你想做一个rake test:api任务:做rake -w test | grep '^rake test'来查看Rails定义测试任务的文件(在railties gem中)。在testing.rake中,您将看到Rails如何定义默认子目录的任务。创建一个lib / tasks / test.rake并为你的新子目录做同样的事情:

Rails::TestTask.new('api' => "test:prepare") do |t|
  t.pattern = "test/api/**/*_test.rb"
end