2011-06-29 64 views
0

当我使用spec来编写集成测试时,比如应该有'/'的主页,我总是失败,我不知道这是否是这样是我的Rails版本是3.0.0.9的东西。Ruby on Rails3教程现场教程#5 by Michael Hartl

输出如下,有人请帮助我。

1)LayoutLinks应该有“/” 故障/错误一个主页:无法找到回溯 栈层次过深 #/Users/xiongzhend/.rvm/rubies/ruby-1.9匹配线1,2-P180/lib中/红宝石/ 1.9.1/forwardable.rb:185

2)LayoutLinks应该有 '/' 接触 故障/错误联系人页面:无法从回溯 堆栈找到匹配的行级别太深 #/Users/xiongzhend/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/forwardable.rb:185

3)LayoutLinks应该有一个关于在“/约” 故障/错误页:无法找到回溯 栈层次过深匹配线 #/Users/xiongzhend/.rvm/rubies/ruby- 1.9.2-P180/lib中/红宝石/ 1.9.1/forwardable.rb:185

4)LayoutLinks应该有 '/帮助' 故障/错误帮助页面:无法从回溯 找到匹配的行堆栈级别太深 #/Users/xiongzhend/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/forwardable.rb:185

5)LayoutLinks应该有“/注册” 故障/错误一个注册页面:无法找到回溯 栈层次过深 #/Users/xiongzhend/.rvm/rubies/ruby-匹配线1.9.2-p180/lib/ruby​​/1.9.1/forwardable.rb:185

回答

0

这是使用RSpec 2.0.0beta18时由Webrat引起的问题。

有2种方法来解决这个问题:用以下的sample_app目录中编辑Gemfile

  1. 降级Webrat到0.7.1版本:

    group :development do 
    gem 'rspec-rails', '2.0.0.beta.18' 
    gem 'webrat', '0.7.1' 
    end 
    
    group :test do 
    gem 'rspec', '2.0.0.beta.18' 
    gem 'webrat', '0.7.1' 
    end 
    

    然后进入你的最喜欢的终端并键入以下命令bundle update webrat

  2. 另一种方法是简单地使用rspec的新版本,它显然已经解决了问题。编辑您的Gemfile用下面的代码:

    group :development do 
    gem 'rspec-rails' 
    end 
    
    group :test do 
    gem 'rspec' 
    end 
    

    将从rubygems.org(目前2.6.0)安装最新版本的R-规格的。

相关问题