运行一些rake任务后会出现以下输出:
Loaded suite /usr/bin/rake
Started
Finished in 0.00042 seconds.
0 tests, 0 assertions, 0 failures, 0 errors
此输出对于与测试无关的任务无用或不必要。我想阻止它出现。我认为它源于需要某个文件或包含某个模块。
更新:看起来我错了,这确实在Rails内置的一些任务中出现。以下是加载--trace
的灯具的输出。
$ rake db:fixtures:load --trace
** Invoke db:fixtures:load (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:fixtures:load
Loaded suite /usr/bin/rake
Started
Finished in 0.000255 seconds.
0 tests, 0 assertions, 0 failures, 0 errors
答案 0 :(得分:11)
解决方案可以在这里找到:
http://github.com/thoughtbot/shoulda/issues/#issue/59
基本上不需要shoulda gem,除非它是测试环境(已经需要测试/单位)。
答案 1 :(得分:1)
首先检查Rake::TestTask
的测试模式。应该是'test/**/*_test.rb'
。
无论出于何种原因,Test :: Unit正试图在/usr/bin/rake
可执行文件中找到测试,这可能意味着你在某处出现了虚假模式。
如果您遇到这样的问题,您希望使用rake
运行--trace
,以查看正在运行的任务和任务依赖关系,以及以何种顺序运行。如果更新模式不起作用,请将已启用--trace
的完整运行的输出复制到您的问题中。
答案 2 :(得分:0)
我到了这个文件:〜/ .rvm / rubies / ruby-1.9.2-head / lib / ruby / 1.9.1 / minitest / unit.rb
在第498行(就在“def self.autorun”之后),我把:
return # the user of this computer put this here, because of reasons
我不认为这种方法会让我失望,因为他错过了......