Ruby on rails 命名错误:未定义的方法';邮政';
我正在使用Rails 2.3.18对一个应用程序进行一些测试 运行rake时,第一次测试失败。 测试文件为:Ruby on rails 命名错误:未定义的方法';邮政';,ruby-on-rails,ruby,rake,Ruby On Rails,Ruby,Rake,我正在使用Rails 2.3.18对一个应用程序进行一些测试 运行rake时,第一次测试失败。 测试文件为: require 'test_helper' class ItemTest < ActiveSupport::TestCase test 'add_item' do assert_equal 0, Item.find(:all).size post :add_item, :item => {:name => 'Name of item',
require 'test_helper'
class ItemTest < ActiveSupport::TestCase
test 'add_item' do
assert_equal 0, Item.find(:all).size
post :add_item, :item => {:name => 'Name of item',
:comment => ''}
assert_response :redirect
assert_redirected_to :action => 'index'
assert_equal 1, Item.find(:all).size
end
end
对此进行的研究提出了一些建议,但没有一个有效
它在测试之前执行“一些测试”
。
这将错误更改为另一个命名错误,表示“it”未定义有人知道我如何解决这个问题吗?您的类应该继承自
ActionController::TestCase
,而不是ActiveSupport::TestCase
。是ActionController::TestCase
为测试提供了get
/post
/etc方法。看起来您试图向模型对象发布,这没有任何意义。这应该是类ItemControllerTest
?你想测试什么?我想测试当“添加项目”页面给出项目的详细信息时会发生什么。至少应该在给定列表中添加一个项目。第一步是发布一个新项目。这是通过名为manager\u controller.rb的控制器页面中的“add\u item”方法完成的
NoMethodError: undefined method `post' for #<ItemTest:0x7f0645ce1790>