はじめに RSpec でテストを書く際に、データの準備方法として let, let!, before があります。 これらの使い分けを明確に理解していないと、意図しない動作をしてしまうことがあります。それぞれの使い方を記事にしてみました! 1. let と let! の違い RSpec では、テストデータを定義するために let と let! がよく使われますが、両者には以下の違いがあります。 メソッド 実行タイミング 特徴 let 遅延評価(最初に参照されたとき) let(:user) { User.create(...) } のように定義しても、テストで user を参照しない限り実行され…