2

我一直在我的一台机器上学习 RSpec 教程,希望能更多地了解 BDD 和 TDD。我的设置是使用 Rails 2.2.2 和 Rspec 1.1.12

今晚我决定继续使用我的主要机器并将我的代码从我的便携式计算机移动到我的桌面。没有 RSpec,我安装了 gem 。. .

sudo gem install rspec
sudo gem install rspec-rails

冲突和诽谤!新版Rspec安装!1.2.0!现在我的测试到处都失败了!虽然我完全打算跟进并学习最新版本,但我真的很想完成本教程的剩余内容,而无需重新开始。我想知道。有没有办法安装并指定我想针对以前的 Rspec 1.2.12 运行我的代码?

4

3 回答 3

3

您可以使用指定的 VERSION 卸载并重新安装。在这里解释。

于 2009-03-19T09:33:34.280 回答
3

如果你想在你的电脑上安装多个版本,如果你应该有一个 2.2 rails 应用程序和一个 2.3 rails 应用程序,那么在你的 environment.rb 文件中指定:

config.gem, 'rspec', :lib => 'spec', :version => '1.1.12'

并且您的应用程序将使用该 gem 规范和随附的 rspec-rails gem。这将使您能够为每个应用程序使用适当的 gem。

于 2009-03-19T22:53:01.700 回答
2

除了在我的环境/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
于 2011-08-16T15:58:41.703 回答