Laravel 4 でデータベースを使ったテストを書く際の Tips です。 自動テストでデータベースにアクセステストを書く際に大切なのが、データベーステーブルのデータをテストで想定された状態にしておくということです。テーブルの内容がテストを実行される度に異なると、ある時はテストが通って、ある時は通らないという状態になります。 この「想定された状態」をセットアップするために、フレームワークで用意されている Migration と Seeder を利用しています。 テストケースでマイグレーション実行 開発を進めていると、データベーススキーマを変更する場合があります。マイグレーションファイルを作成して、php artisan migrate コマンドで適用するのことになります。テスト用データベースについても適用する必要がありますが、php artisan migrate --env=testi