emolog

脳内メモです。

railsでfactory_botのセットアップ

やりたいこと

  • 新規プロジェクトでのfactory_botの整備をしたい
    • railsでモックのデータを作る

f:id:ababababa0222:20210308172835p:plain

やったこと

  • gemに追加
group :test do
  gem 'factory_bot_rails'
end
  • rails_helperに以下を追加
RSpec.configure do |config|
  config.include FactoryBot::Syntax::Methods
end

上述のコードを加えることで、以下のようにrspecのテストコード中でFactory_botのメソッドを使用する際に、クラス名の指定を省略できるようになる。

# 通常FactoryBotをつけないと、メソッドを呼べない
user = FactoryBot.create(:user)

# 上の設定を追加することで、FactoryBotの記述が省略できる。
user = create(:user)

FactoryBotのデータはspec/factories/xxxxx.rb みたいな形式

  • spec/factories/user.rb
FactoryBot.define do
  factory :user do
    name { "testuser1" }
  end
end