测试单元与ruby 2.2.0不兼容吗?

时间:2015-03-20 23:37:59

标签: ruby unit-testing tdd rvm

我对红宝石很新。我开始按照this指南设置ruby,rvm,将我的所有mac更新到当前版本,没有任何问题。所以我安装了测试单元gem并尝试了一些TDD脚本。运行测试没有任何反应。所以我用" -d"运行ruby。选项,这发生了。

  

异常' LoadError' at /Users/BlackSheep/.rvm/rubies/ruby-2.2.0/lib/ruby/site_ruby/2.2.0/rubygems.rb:1222 - 无法加载此类文件 - ruby​​gems / defaults / operating_system

     

异常' LoadError' at /Users/BlackSheep/.rvm/rubies/ruby-2.2.0/lib/ruby/site_ruby/2.2.0/rubygems.rb:1231 - 无法加载此类文件 - ruby​​gems / defaults / ruby​​

     

异常`LoadError' at /Users/BlackSheep/.rvm/rubies/ruby-2.2.0/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54 - 无法加载此类文件 - test / unit

     

异常' NoMethodError' at /Users/BlackSheep/.rvm/rubies/ruby-2.2.0/lib/ruby/site_ruby/2.2.0/rubygems/specification.rb:1984 - undefined method`to_ary'对于#

     

异常' NoMethodError' at /Users/BlackSheep/.rvm/rubies/ruby-2.2.0/lib/ruby/site_ruby/2.2.0/rubygems/specification.rb:1984 - undefined method' to_ary'对于#

可能是什么问题?

版本

  • Ruby:2.2.0p0(2014-12-25修订版49005)[x86_64-darwin14]
  • Rvm:1.26.10
  • 宝石:2.4.6

编辑:我已降级到2.0.0版,它运行正常。那么测试单元宝石是不是针对当前的红宝石版本制作的?

1 个答案:

答案 0 :(得分:1)

最多2.1,Ruby附带test/unit,但从2.2开始,它已被删除。

它仍可用作宝石:https://github.com/test-unit/test-unit/。从README:“Test :: Unit 1.2.3是原始的Test :: Unit,直接来自ruby发行版。它作为gem分发,允许工具构建者将它作为独立的包使用。 ruby中的测试框架将很快发生根本变化。“

如果确保安装了测试单元gem(gem install test-unit或将gem 'test-unit'添加到Gemfile中),它应该可以解决问题。