RSpecを結構書いてますが、テストを書く上で、FactoryBotが整備されていると楽ですよね。 ただ、最低限でも過剰でも、テストケースが漏れたりします。 また、無駄にINSERTされて、テストが遅くなったりする事もあります。 改めて整理する為に、こう書くのが良いだろうと思うベストプラクティス!?をまとめてみました。 単体で作成できるように作る 必須項目は全て埋める。できるだけユニークな値となるように 必須のリレーションはassociationで作成する 任意項目もできるだけ埋める traitでベースのfactoryを上書きして共通化する traitをfactory間で共有して共通化する 最後に(まとめ) 単体で作成できるように作る これは基本だと思います。rails cで、一時的に作りたい場合にも役立ちます。 必須項目は全て埋める。できるだけユニークな値となるように Request S