我是Ruby on Rails的新手。我刚开始使用Michael Hartl的RoR教程(klick)。我在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
并且所有测试都会失败。
可能我的Gemsets搞砸了,或者我需要另一个版本的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 sets。像魅力一样......: - )
答案 0 :(得分:3)
通常可以通过执行bundle exec rspec spec
而非rspec spec