rspec入门

时间:2014-07-01 14:59:19

标签: ruby-on-rails ruby rspec

我试图用rspec在TestFirst.org上做实验。我已经安装了rspec并在项目目录中启动了它。但是,当我" rake"我收到此错误消息:

 Could not find 'rspec' <~> 2) - did find: [rspec-3.0.0]
 C:/Sites/RubyTest/RubyTesting/learn_ruby/rakefile:2:in `<top (required)>´

我的版本:

  ruby 1.9.3p545
  rails 4.1.1
  rspec 3.0.2

似乎我得到了错误版本的rspec或其他东西。我的操作系统是Windows 7顺便说一句。

这是rakefile的内容:

     gem 'rspec', '~>2'
     require 'rspec/core/rake_task'

     task :default => :spec

     desc "run tests for this lab"
     RSpec::Core::RakeTask.new do |task|
     lab = Rake.application.original_dir
     task.pattern = "#{lab}/*_spec.rb"
     task.rspec_opts = [ "-I#{lab}", "-I#{lab}/solution", '-f documentation', '-r        ./rspec_config']
     task.verbose = false
     end

2 个答案:

答案 0 :(得分:1)

这是因为rspec ~3.0.0已激活且您的佣金文件需要'rspec', '~>2'。更改Rakefile中的rspec版本以解决此问题。

gem 'rspec', '~>3'

答案 1 :(得分:0)

您的rspec(3.0.2)安装版本似乎比项目预期的版本(~2.x)更新。

解决问题的一种简单方法是强制捆绑使用项目版本:

bundle exec rake

(而不仅仅是使用rake)