factorybotのtraitってなんぞ?

factory_botを使っていて、traitっていうものが出てきました。よくわかっていませんでした。ちょっとそのことについて、簡単にまとめておきたいと思います。

factorybotのtraitってなんぞ?

結論

結論から言うとfactorybotやspecをdryに書くための機能です。

例えば、ほとんど一緒だけど、ある別のステータスを持たせたいfactoryデータを作りたい時に便利です。

ちょっと詳しく

factory_botのtraitですが、結論から言うとfactoryをdryにわかりやすく書く機能です。

例えばrspecでテストを書くときに、taskモデルがあったとして、そのタスクのnot doneタスクと、doneのタスクをテストしたいとします。

その場合にどうやってfactoryを書くかってことなんですが、ほぼ同じようなパラメーターのtaskのfactoryを2つ書かなくてはいけませんよね。

そんな時、traitを使うと便利です。ある変更したいステータスだけの値を更新することができます。細かく書くと色々と出てきてしまうの、別の記事を参照してください。概念的なところだけを説明しました。

では!

Leave a Reply

Your email address will not be published.

CAPTCHA