Ruby on rails 3 带有轨道模型的短链缺失Rspec方法

Ruby on rails 3 带有轨道模型的短链缺失Rspec方法,ruby-on-rails-3,rspec,rspec2,stub,Ruby On Rails 3,Rspec,Rspec2,Stub,我试图使用stub\u chain模拟控制器操作中的一系列调用。然而,它正在抱怨一个未找到的方法错误。经过一系列的搜索,我没有真正找到任何与这个特定错误相关的信息,所以我想我遗漏了一些相当明显的东西。有什么想法吗 谢谢 以下是错误: Admin::AccountsController GET #index with accounts Failure/Error: before(:each) { Account.stub_chain(:scoped, :page, :order).return

我试图使用
stub\u chain
模拟控制器操作中的一系列调用。然而,它正在抱怨一个未找到的方法错误。经过一系列的搜索,我没有真正找到任何与这个特定错误相关的信息,所以我想我遗漏了一些相当明显的东西。有什么想法吗

谢谢

以下是错误:

Admin::AccountsController GET #index with accounts 
 Failure/Error: before(:each) { Account.stub_chain(:scoped, :page, :order).returns([account]) }
 NoMethodError:
   undefined method `stub_chain' for #<Class:0x007f96c6448158>
 # ./spec/controllers/admin/accounts_controller_spec.rb:11:in `block (4 levels) in <top (required)>'

您是否缺少
要求“spec\u helper”
?@zetteic否,要求在那里。如果我删除before语句,一些规范会通过。RSpec的哪个版本?同样,我怀疑这会有什么不同,但通常规范文件名为
accounts\u controller\u spec.rb
@zettetic它是2.12.0版,文件名也是注释中的一种类型。
#spec/controllers/admin/accounts_controller.rb
describe 'GET #index' do

  context 'with accounts' do

    let(:account) { FactoryGirl.build_stubbed(:account) }
    before(:each) { Account.stub_chain(:scoped, :page, :order).returns([account]) }

    subject { get :index }

    it { should render_template(:index) }
    it { should assign_to(:accounts) }
    it { should respond_with(:success) }
    it { should_not set_the_flash }
  end
end