我試圖測試窗體的存在。我是Rails新手。Rails:在RSpec測試中調用「渲染」時「缺少部分」
我new.html.erb_spec.rb
文件的內容是:
require 'spec_helper'
describe "messages/new.html.erb" do
it "should render the form" do
render '/messages/new.html.erb'
reponse.should have_form_putting_to(@message)
with_submit_button
end
end
視圖本身,new.html.erb,有代碼:
<%= form_for(@message) do |f| %>
<%= f.label :msg %> <br />
<%= f.text_area :msg %>
<%= f.submit "Submit" %>
<% end %>
當我運行rspec
,它沒有像這樣:
1) messages/new.html.erb should render the form
Failure/Error: render '/messages/new.html.erb'
Missing partial /messages/new.html with {:handlers=>[:erb, :rjs,:builder,:rhtml, :rxml], :formats=>[:html,:text, :js, :css, :ics, :csv, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json], :locale=>[:en, :en]} in view paths "/Users/tristanmartin/whisperme/app/views"
# ./spec/views/messages/new.html.erb_spec.rb:5:in `block (2 levels) in <top (required)>'
有誰知道問題是什麼?
謝謝!
你可以嘗試使用have_form_posting_to而不是have_form_putting_to,看看你是否仍然收到錯誤? – Raghu 2010-12-13 05:48:37
嘗試從路徑名中刪除前導斜槓。 – zetetic 2010-12-13 09:17:35
謝謝Raghu,我沒注意到我使用了錯誤的方法。儘管如此,仍然收到錯誤。 – WoodenKitty 2010-12-14 00:46:05