2010-10-04 138 views

回答

1

免責聲明:我知道,這是很老的問題,但無論如何都會回答。

推理:

去除這些方法背後的想法是,實例變量和模板在控制器的行動呈現是控制器的內部,和控制器測試不應該關心他們。 根據Rails的團隊,控制器測試應該更關心的是什麼HTTP代碼設置,而不是在控制器的內部測試該控制器的動作像什麼餅乾設置,或結果。所以,這些方法從核心中刪除。

提出的解決方案:

assert_response :success 

# or rspec with should 
response.should be_success 

# or rspec with expect 
expect(response).to have_http_status(:success) 

Github Issue and explanation from DHH himself