効率的にテストコードを記載するには

タイトル通りのことをするのに、今回学んだのが、FactoryBotとFakerです。

FactoryBotはgemに追加をしてから、specの中にfactoriesのフォルダを作成し、そこにrbファイルを作成します(今回はuser登録部分だったので、user.rbというファイルを作成しました。)

そこで、ユーザー登録をする際のテストを行うためのテストコードで作成していた繰り返し記述していた部分(nicknemaやemailなど)のインスタンスをまとめておき、FactoryBot.build(:user)と省略して書くことができるようになります。

Fakerについては、FactoryBotで作成していた例(nickname {'test'}など)を固定値ではなく、ランダムにしてくれるgemファイルになります。

書き方としては、Faker::Name.initials(number: 2)といったような書き方でした。

最後のnumberの部分は文字数です。

 

新しい知識は増えていくものの、これを使いこなしてこそと思うので、カリキュラムの先へいき、これが必要になったタイミングで使いこなせるようになれればと思いました。