未初始化的常量 ApplicationRecord rspec

uninitialized constant ApplicationRecord rspec

1) 创建了一个名为 Skill

的模型

2) 运行 一些种子

3) 运行 rspec --init

4) 使用以下代码创建文件 skill_spec.rb

require_relative "../app/models/skill"

describe Skill do
  describe "database" do
    it "should have 42 skills" do
      expect(Skill.all.count).to eq(42)
    end
  end
end

5) 当我 运行 rspec 在控制台中得到错误:

Failure/Error: class Skill < ApplicationRecordNameError: uninitialized constant ApplicationRecord

我已经有一个包含以下代码的文件application_record.rb

class ApplicationRecord < ActiveRecord::Base
  self.abstract_class = true
end

对于 rails 规范,在每个规范文件的开头使用 require 'rails-helper'(它由 bin/rails generate rspec:installrspec-rails gem 生成)

它包含将加载您的 rails 环境的行 require File.expand_path('../config/environment', __dir__),并且您将自动加载和所有其他 rails 部分工作。