0
如何在集成测试中调用控制器中的特定方法。例如,我有以下的测试/控制器/ testing.rb文件 这是运行细纹集成测试中的调用控制器方法Rails
get :show, {employee_id: @employee.id}
assert_response :success
但我怎么能叫集成测试文件显示方法?
如何在集成测试中调用控制器中的特定方法。例如,我有以下的测试/控制器/ testing.rb文件 这是运行细纹集成测试中的调用控制器方法Rails
get :show, {employee_id: @employee.id}
assert_response :success
但我怎么能叫集成测试文件显示方法?
在您的控制器测试中,测试按惯例知道,当您拨打get :show
时,它应该使用控制器的show
动作,其名称与您的测试类相同。
在集成测试中,你不能这样做。您必须使用您的应用程序的路线才能请求控制器操作。该文档说,您可以使用get_via_redirect(path, [parameters], [headers])
以及其他一些方法(请参阅下面的文档链接)。
该方法的path
参数可以是您的路径帮助程序之一(动作user#show
的示例,请使用路径帮助程序user_path(@user)
)。
文档:
为什么你需要使用一个集成测试,直接打了一个控制器动作?你想要测试什么,不能通过上面提供的控制器测试来完成? –