查看控制器測試教程,作者給出了一個rspec測試示例,用於測試控制器操作。我的問題是,他們爲什麼使用方法attributes_for
而不是build
?沒有明確的解釋,爲什麼attributes_for
被使用,除了它返回值的散列。FactoryGirl和Rspec Testing中的attributes_for的含義
it "redirects to the home page upon save" do
post :create, contact: Factory.attributes_for(:contact)
response.should redirect_to root_url
end
教程鏈接在這裏找到:http://everydayrails.com/2012/04/07/testing-series-rspec-controllers.html的例子在開始題目部分Controller testing basics
謝謝pjam,我現在明白了!你正在變得越來越像一個rspec導師,因爲我在overstackflow中。 – jason328
一直在尋找這個答案。儘管如此......如果在模型中無法訪問某些屬性,我將如何繞過'post:create,user:u.attributes'? –
我不知道我明白你想要什麼,你是說如果某些屬性不在attr_accessible列表中?然後我不明白是什麼問題,我可能會在這裏丟失一些東西 – pjam