当我进入终端进入rake时,为什么我的minitest.rake会运行两次?

Bri*_*tro 5 testing rake ruby-on-rails minitest

我创建了一个minitest.rake,根据ryan bates railcast(http://railscasts.com/episodes/327-minitest-with-rails).

当我在终端中运行rake时,测试运行,然后在重置命令行之前再次运行.

require "rake/testtask"

Rake::TestTask.new(:test => "db:test:prepare") do |t|
  t.libs << "test"
  t.pattern = "test/**/*_test.rb"
end

task default: :test
Run Code Online (Sandbox Code Playgroud)

khu*_*hka 3

我想您已经定义了一个具有此类名称的任务。如果您定义同名的新任务,它将附加到已有的任务中。

如果您删除或注释掉这段代码并执行rake -Ttest任务还会在那里吗?

  • 是的,你是对的,我刚刚检查过,“rails new -T”生成了一个略有不同的“config/application.rb”,其中加载了所有rails组件,但跳过了“rails/test_unit/railties”,因此这个 rake 任务缺席。 (2认同)