Closed a-pompom closed 6 months ago
Testingのページの辺りにリクエストを疑似的に再現するようなクラスが紹介されているはず。
せっかくだからGetting Startedから復習するか。 https://laravel.com/docs/11.x/testing
UnitテストはLaravelのbootstrapを呼び出さないので、Laravelに依存しない関数レベルのテストを記述。 Serviceクラスなんかに切り出されたビジネスロジックを対象とするイメージ。
テストの実行を少しでも速くするために分けられている。 とはいえ、機能がLaravelに依存するかどうかという単位で分けられてしまうので、テストコードの構造と機能の構造が乖離するように思える。 よほど速度を求めない限りはすべてFeatureに集約して良いように感じた。
この辺はまだ経験が足りない。
php artisan test
コマンドの方が出力が冗長である分、デバッグに向いているらしい。
https://laravel.com/docs/11.x/testing#running-tests
とりあえず単にHTTPリクエストをモックするところまで入門しておく。 https://laravel.com/docs/11.x/http-tests
ファイルアップロードやセッションも扱うようなテストにもそのうち入門したい。 テストコードの構造を見るに、Djangoとかと似たような仕組みでモック化していそう。
学びたいこと
基本的な処理のテストコードの書き方。 Laravelでテストコードを実行するときの手順。