我是 Ruby on Rails 的新手。我刚从 Michael Hartl ( klick ) 的 RoR 教程开始。我在 5.2.1 学习 Integration_tests。
当我运行rails generate integration_test layout_links
它会生成 rspec 文件,但运行时rspec spec
我得到:
You have already activated rspec-core 2.6.3, but your Gemfile requires rspec-core 2.x.x
并且所有测试都失败了。
如果我玩一点,我会得到SystemStackError:stack level too deep
所有测试都会失败。
可能我的 Gemset 搞砸了,或者我需要运行另一个版本的 rspec-rails。
我的 Gemfile.lock 的一部分看起来像:
rake (0.9.1)
rb-fsevent (0.4.0)
rspec (2.6.0)
rspec-core (~> 2.6.0)
rspec-expectations (~> 2.6.0)
rspec-mocks (~> 2.6.0)
rspec-core (2.6.3)
rspec-expectations (2.6.0)
diff-lcs (~> 1.1.2)
rspec-mocks (2.6.0)
rspec-rails (2.0.0.beta.18)
rspec (>= 2.0.0.beta.14)
webrat (>= 0.7.0)
sqlite3 (1.3.3)
thor (0.14.6)
编辑:解决。我将 rspec-rails 版本更改为 2.6.1 并将 'webrat' 添加到 :development 和 :test gem 集。奇迹般有效... :-)