我一直在我的一台机器上学习RSpec教程,希望能够更多地了解BDD和TDD。我的设置是使用Rails 2.2.2和Rspec 1.1.12
今晚我决定继续使用我的主机并将我的代码从便携式设备移到我的桌面。没有RSpec,我安装了宝石。 。 。
sudo gem install rspec
sudo gem install rspec-rails
冲突和诽谤!安装了新版Rspec! 1.2.0!而现在我的测试在整个地方都失败了!虽然我完全打算跟进并学习最新版本,但我真的想完成本教程的内容,而不必重新开始。我想知道。有没有办法安装并指定我想针对之前的Rspec,1.2.12运行我的代码?
答案 0 :(得分:3)
您可以使用指定的VERSION卸载并重新安装。解释here。
答案 1 :(得分:3)
如果你想在你的计算机上安装多个版本,那么如果你应该有一个2.2 rails应用程序和一个2.3 rails应用程序,那么在你的environment.rb文件中指定:
config.gem, 'rspec', :lib => 'spec', :version => '1.1.12'
并且您的应用程序将使用该gem规范以及随之而来的rspec-rails gem。这将使您能够为每个应用程序使用适当的gem。
答案 2 :(得分:2)
除了在我的environment / test.rb文件中指定rspec和rspec-rails版本之外,我在script/
前添加了spec
,例如:
script/spec spec/controllers/treasury_accounts_controller.rb
通过此错误:
/opt/ror/ruby-ee-1.8.7-2011-03/lib/ruby/site_ruby/1.8/rubygems.rb:335:in `bin_path': can't find executable spec for rspec-2.1.0 (Gem::Exception)
from /opt/ror/ruby/bin/spec:19