gpt4 book ai didi

ruby-on-rails - 在 Rails 3 中,我得到了一个用于回收的 NoMethodError!测试过程中的方法

转载 作者:数据小太阳 更新时间:2023-10-29 06:29:34 25 4
gpt4 key购买 nike

我有一个使用固定装置的功能测试。我也在我的单元测试中使用了固定装置,但它们没有缺陷。运行功能测试时,我得到:

NoMethodError: undefined method 'recycle!' for #<Response:0x10346be10>
/test/functional/responses_controller_test.rb:10:in 'test_testing'

在这一点上,我的功能测试 只执行获取索引操作。示例:

setup do
@response = responses(:one)
end

test "testing" do
get :index
assert true
end

我的 TestHelper 类确实包含所有固定装置,因此 Responses 固定装置肯定正在加载。就像我说的,固定装置在单元测试中工作得非常好。

知道是什么原因造成的吗?

最佳答案

改变

setup do
@response = responses(:one)
end

setup do
@myresponse = responses(:one)
end

开始吧!

问题出在第386行附近的“actionpack-3.0.1/lib/action_controller/test_case.rb”。

测试用例假定@response 持有一个“ActionDispatch::Response”。你覆盖它,它不再是“ActionDispatch::Response”并且测试用例失败。

我不确定这是否是预期的行为。

无论如何,只要确保你没有覆盖@response/@request/@controller/@routes,它应该可以工作。

关于ruby-on-rails - 在 Rails 3 中,我得到了一个用于回收的 NoMethodError!测试过程中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3846461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com