2011-06-29 66 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-規格的。

相關問題