在Rails 4.2上使用RSpec w / Capybara

时间:2015-11-15 20:39:59

标签: ruby-on-rails rspec capybara

在我的app / controllers / pet_controller.rb文件中,我有一些代码

class PetsController < ApplicationController
  before_action :set_pet, only: [:show, :edit, :update, :destroy]
  before_action :process_params, only: [:create, :edit]
  # GET /pets
  # GET /pets.json
  def index
    @pets = Pet.find_by_sql ["SELECT * FROM pets WHERE \"userId\" = ?", params[:userId].to_i]
  end
.
.
.

我的spec / pets_spec.rb中有一些看起来像

的代码
describe PetsController do
    describe 'GET #index' do
        it { is_expected.to respond_with :ok }
    end
end

如果控制器正确响应,则进行简单测试。 当我调用 bundle exec rspec 时,我得到了一个

/spec/pets_spec.rb:1:in `<top (required)>': uninitialized constant PetsController (NameError)

我很擅长使用这个测试工具,非常感谢任何帮助我们开始这项工作。

-Otterman

1 个答案:

答案 0 :(得分:0)

你可能没有为Rails安装spec/spec_helper.rb

Read this introduction

这将生成两个文件:spec/rails_helper.rbbundle exec rake spec。打开它们并阅读它们如何工作以及它们的用途。

然后运行bundle exec rspec spec或{{1}}。