我正在尝试使用Rspec构建一个测试套件,而且我总是使用#34; Stack Level太深而且#34;失败消息,无论我尝试运行什么测试。
我正在使用Rails 3.0.5和Rspec 2.0.1
为了简单起见,我做了一个简单的测试:
it "should show home page" do
visit root_path
response.should be_success
end
仅使用以下方法测试此测试文件:
rspec ./spec/requests/simple_test.rb
给了我"堆栈级别太深"错误。
根路径现在只是一个简单的主页,上面写着"这是主页"它在浏览器中工作正常。此外,test.log文件显示请求已被处理并给出200 OK答案...仍然测试失败"访问root_path:堆栈级别太深...
任何人都知道发生了什么?我在网上搜索过,找到了许多答案,其中有无限递归但是这里??? ......
最后一个精度:几个月前,我没有遇到这个问题..从那以后,我安装了设计(版本1.5.3)......但是在这里,我既没有调用任何设计,也没有用户控制器,那么什么可能导致这种行为?
非常感谢任何线索......我不知道如何解决或调试这个问题。
答案 0 :(得分:2)
问题是webrat中的一个错误:
当与Rspec 2.0.1一起使用时,Webrat 0.7.3或0.7.2会导致“堆栈级太深”错误。
降级为webrat 0.7.1解决了问题
那里有更多解释:http://www.backdrifter.com/2010/11/07/stack-level-too-deep-with-rspec-2-and-webrat/