RSpec工厂与FactoryBot'未初始化的常量FactoryBot'

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

我在this tutorial之后设置了请求规范。如果我用bundle exec rspec运行测试,我会收到以下错误:

An error occurred while loading ./spec/factories/entities_spec.rb.
Failure/Error:
  FactoryBot.define do
    factory :entity do
      name { FFaker::Lorem.word }
    end
  end

NameError:
  uninitialized constant FactoryBot

本教程仅要求将一些配置添加到rails_helper.rb文件中。我无法想象我需要添加一个require 'factory_bot'。如果我将它添加到rails_helper.rb文件的顶部,则错误仍然存​​在。如果我将它添加到factories / entity_spec.rb文件,我会收到此错误:

An error occurred while loading ./spec/requests/entities_spec.rb.
Failure/Error:
  factory :entity do
    name { FFaker::Lorem.word }
  end

FactoryBot::DuplicateDefinitionError:
  Factory already registered: entity
ruby-on-rails rspec ruby-on-rails-5 factory-bot
1个回答
0
投票

只需重命名我的factories/*.rb文件,例如factories/user_spec.rbfactories/user.rb解决了这个问题。

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