ruby – Rake不知道如何构建任务:default或minitest

我建立了一个宝石一回,并没有包括任何测试(对我的耻辱).我已经尝试通过包含最小的方式来解决这个问题,但是我正在门外卡住了以下错误:

Don’t know how to build task ‘default’

这是我的Rakefile

require 'rake/testtask'

Rake::TestTask.new do |t|
  t.test_files = FileList['test/*_test.rb']
end

而test / unit_test.rb中的虚拟文件

require 'minitest/autorun'

class TestPackage < MiniTest::Unit::TestCase

  def test
    assert_equal 10,Array.new(10).size
  end
end

如果我将Rakefile更改为包含任务:default => ‘minitest’的错误信息改变为不知道如何构建任务’minitest’

rake –trace似乎只是把我引回到处理任务调用的Rake gem的部分.没有线索我可以看到:

~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/task_manager.rb:49:in `[]'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:115:in `invoke_task'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:94:in `block (2 levels) in top_level'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:94:in `each'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:94:in `block in top_level'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:88:in `top_level'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:66:in `block in run'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling'
~/.rbenv/versions/1.9.3-p286/lib/ruby/1.9.1/rake/application.rb:63:in `run'
~/.rbenv/versions/1.9.3-p286/bin/rake:32:in `<main>'

解决方法

耙子任务总是命名. Rake :: TestTask任务被命名为test,所以如果你运行rake测试,它将运行你的测试.

要使Rake :: TestTask的默认任务只包括:

task :default => :test

在你的Rakefile中

http://rake.rubyforge.org/Rake/TestTask.html

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...