Laravel のドキュメントDatabaseMigrations
では、テスト間でデータベースを移行およびロールバックするためにトレイトを使用することを推奨しています。
use Illuminate\Foundation\Testing\DatabaseMigrations;
class ExampleTest extends TestCase
{
use DatabaseMigrations;
/**
* A basic functional test example.
*
* @return void
*/
public function testBasicExample()
{
$response = $this->get('/');
// ...
}
}
ただし、テストで使用したいシード データがいくつかあります。私が実行した場合:
php artisan migrate --seed
その後、最初のテストでは機能しますが、その後のテストは失敗します。これは、トレイトが移行をロールバックし、移行を再度実行するときにデータベースをシードしないためです。移行でデータベース シードを実行するにはどうすればよいですか?