2010-10-04 135 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