ue-bose_BLOG

日々学んだことをアウトプット

テストについての備忘録④

今回はfactory_botについてまとめたいと思います。

 

factory_botとは

ダミーのインスタンスを作成する事ができるGem

 

specディレクトリの直下にfactoriesディレクトリを追加し、さらに、その中にデータ作成のためのテンプレートを用意し、各クラスのインスタンスに定めるプロパティを設定しておく事で、簡単にインスタンスを作成したり、DBに保存できるようになる。

 

データの作成をするメソッド

クラス名のインスタンスをシンボル型で引数にする。

 

buildメソッド

DB保存はしないがアソシエーションは保存する。

クラス名.new = FactoryBot.build

 

createメソッド

DBに保存された状態でデータ生成。

 

factory_botrails_helper.rb

RSpec.configure do |confid|~endの間に

config.include Factory::Syntax::Methodsを追加する事でFactoryBotを省略する事ができる。