Rspec:无论测试如何,堆栈级别太深

时间:2012-03-27 09:48:15

标签: ruby-on-rails unit-testing rspec devise

我正在尝试使用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)......但是在这里,我既没有调用任何设计,也没有用户控制器,那么什么可能导致这种行为?

非常感谢任何线索......我不知道如何解决或调试这个问题。

1 个答案:

答案 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/