Laravel フレームワークは、データベースの移行、データの生成、ミドルウェアの削除のためのテスト トレイトを提供する。
Laravel の基本的な TestCase クラスは、フレームワークの TestCase クラスから継承し、テスト環境を設定する setUpTheTestEnvironment() メソッドが含まれる。
setUpTheTestEnvironment() メソッドには、Facade インスタンスをクリアし、アプリケーションを更新し、テスト ヘルパー トレイトをブートするメソッドが含まれる。
setUpTraits() メソッドは、インスタンス上のトレイトを再帰的に返し、フレームワーク トレイトのチェックも含む。
setUpTraits() メソッドは、フレームワーク トレイトが使用されている場合、refreshDatabase() や runDatabaseMigrations() などのメソッドを呼び出す。
setUpTraits() メソッドは、トレイト名に一致する setup/teardown メソッドをチェックする。
MyUsefulHelper トレイトが使用されている場合、メソッドの存在チェックは setUpMyUsefulHelper() と tearDownMyUsefulHelper() メソッドを探す。
トレイトの setup メソッドは、テスト クラスの setup メソッドでのボイラープレート コードを避けるために使用できる。
再利用可能なトレイトは、各テストの前に自動的にテスト データ、ヘルパー、またはその他のロジックを設定する。
Laravel の自動 setUp フックは、トレイトが自動的にセットアップとリセットのロジックを処理することを許し、例えば Wiremock サーバーとのやりとりも含む。
laravel-news.com
Use Laravel's Built-in SetUp Hooks for Application Test Traits
Create attached notes ...
