获取 #<RSpec::ExampleGroups in my rspec

问题描述 投票:0回答:2

Rails 4.2.5,rspec-rails 3.0.2

我想测试我的 API。所以我在 /spec 中创建了

requests
目录。有一个文件叫
projects_spec.rb

这是代码:

describe 'Projects API' do
  describe 'GET /projects' do
    it 'should return 401 HTTP code' do
      get '/api/v1/projects'
      expect(response.status).to eq(401)
    end
  end
end

当我运行这个测试时,我得到了

NoMethodError: undefined method `get' for #RSpec::ExampleGroups::ProjectsAPI::GETProjects:0x007fee73ad9b48>

怎么了?

# rails_helper.rb
config.infer_spec_type_from_file_location!
ruby-on-rails ruby ruby-on-rails-4 rspec ruby-on-rails-5
2个回答
9
投票
describe 'Projects API', type: :request do
  # ...
end

此外,请确保您已将

require 'rails_helper'
包含在
projects_spec.rb
中。


0
投票

2024年答案是:

  1. 在项目根目录中创建一个名为
    .rspec
    的文件。
  2. 内容应如下所示:
--format progress
--color
--require rails_helper

第三行是解决这个错误的关键。

© www.soinside.com 2019 - 2024. All rights reserved.