7

以下会产生错误:“未定义的局部变量或方法‘params’”

assert_equal params[:recipient_id], users(:one).id

你如何测试参数哈希?

assert_redirect另外,当存在参数时如何测试?参数附加到 URL,因此测试model_path或类似的失败。

在 Rails 3 中使用内置的测试类。

4

1 回答 1

8

http://guides.rubyonrails.org/testing.html#functional-tests-for-your-controllers提供了一些此类信息。

在这种情况下, params 附加到@requestor@response对象(取决于您正在测试的 HTTP 方法),因此您可以将其称为@request.params[:recipient_id].

对于重定向: assert_redirected_to post_path(assigns(:post))将断言您被重定向到给定模型的正确路径。assigns 方法应该将您在控制器内部设置的实例变量传递给视图

于 2011-07-08T17:30:38.093 回答