Rails 3.1.1测试:Ruby 1.9.3的基准测试

时间:2011-11-05 06:57:10

标签: ruby-on-rails ruby-1.9.3

我正在尝试使用rake测试:使用Rails 3.1.1和Ruby 1.9.3进行基准测试

我已经尝试过最新的rake版本:gem'rake','〜> 0.9.3.beta.1' 官方和建议的ruby-prof gem:gem'ruby-prof',:git => 'https://github.com/wycats/ruby-prof.git'

但我总是得到这个错误:

rake test:benchmark
/usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:167:in `block in non_options': file not found: --benchmark (ArgumentError)
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:146:in `map!'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:146:in `non_options'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:207:in `non_options'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:52:in `process_args'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/minitest/unit.rb:891:in `_run'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/minitest/unit.rb:884:in `run'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:21:in `run'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:326:in `block (2 levels) in autorun'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:27:in `run_once'
        from /usr/local/rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/test/unit.rb:325:in `block in autorun'
rake aborted!
Command failed with status (1): [/usr/local/rvm/rubies/ruby-1.9.3-p0/bin/ru...]
/usr/local/rvm/gems/ruby-1.9.3-p0/gems/railties-3.1.1/lib/rails/test_unit/testing.rake:26:in `block (2 levels) in define'
/usr/local/rvm/gems/ruby-1.9.3-p0/gems/railties-3.1.1/lib/rails/test_unit/testing.rake:11:in `block in define'
Tasks: TOP => test:benchmark
(See full trace by running task with --trace)

在我的ubuntu服务器和Windows开发环境中都会发生这种情况。有什么想法吗?

更新:我安装了RVM并尝试使用ruby 1.9.2:它可以工作。其他一切都是一样的,切换到1.9.3会带来错误。这可能是ruby 1.9.3或rails / rake等中的错误。

2 个答案:

答案 0 :(得分:3)

您需要安装测试单元Gem。见https://github.com/rails/rails/issues/4938

答案 1 :(得分:0)

您是否尝试过使用bundle exec

$ bundle exec rake test:benchmark