【问题标题】:undefined method `get' with Rspec带有Rspec的未定义方法“get”
【发布时间】:2013-11-21 10:49:18
【问题描述】:

我有一个非常基本的 Rspec 代码的问题,与问题 'undefined method `get' for #' 的问题相同。

但在我的情况下,给出的解决方案都不适合我!

我的 Rspec 代码位于“/RailsProject/spec/controllers”,代码为:

require "../spec_helper"
describe "ApiMobile", :type => :controller do
    it "Log In" do
        get 'apiMobile/v0/logIn/test'
        expect(response).to be_success
    end
end

如您所见,我已按照所有说明进行操作,但问题仍然存在:

 1) ApiMobile Log In
 Failure/Error: get 'apiMobile/v0/logIn/test'
 NoMethodError:
   undefined method `get' for #<RSpec::Core::ExampleGroup::Nested_1:0x000000023b5ec8>
 # ./api_mobile_controller_spec.rb:6:in `block (2 levels) in <top (required)>'
Finished in 0.00056 seconds
1 example, 1 failure

我错过了什么或类似的东西?

谢谢!

【问题讨论】:

  • 确保您的规范助手中需要“rspec/rails”
  • 获取后指定控制器方法为符号。有关定义规格的理想方式,请参阅relishapp.com/rspec/rspec-rails/docs/controller-specs
  • 这样做会引发一个新错误:`require': cannot load such file -- rails/rspec (LoadError)
  • @BillyChan 你确定这是你提到的同一个问题吗?在另一个问题中,他们没有得到undefined method。这似乎是rspec-rails 安装的问题,虽然我还没有看到 OP 的确认。
  • @PeterAlfvin,是的,没错,你总是抓住我 :) Oriol,对不起,我的链接无关紧要。

标签: ruby-on-rails rspec rspec-rails


【解决方案1】:

我终于发现了发生的事情:Peter Alfvin 是对的,错误在于安装。

我在 Gemfile 中添加了“gem rspec”,并在“捆绑安装”之后在命令行键入了“rspec --init”。但我还需要添加 gem 'rspec-rails' 并输入 'rails generate rspec:install'。

现在 get 命令有效(我还有另一个错误,但我认为这与路由有关)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-23
    相关资源
    最近更新 更多