使ってみた。
Laravelには元から入ってた。
# すでに入っているが以下でインストール or バージョンアップ
composer require --dev phpunit/phpunit
9.0 はPHP 7.3以上でないと入れられないので、8.xを入れた
Getting Started with Version 9 of PHPUnit – The PHP Testing Framework
# テストファイル作成
php artisan make:test Http/Controllers/Account/LoginTest
# 実行
./vendor/bin/phpunit tests/Feature/Http/Controllers/Account/LoginTest.php
./vendor/bin/phpunit
php artisan test --testsuite=Feature
php artisan test --testsuite=Feature tests/Feature/Http/Controllers/Account/LoginTest.php
上記だけですぐに実行できる。
あとはテストコードを書くだけ。
しかし、これがめんどくさい。
POSTの投げ方
Laravel HTTPテスト POSTで値を投げる方法 - Qiita
PHPUnitテストでPOST送信テスト | むちむちコード
その他、書き方のパターン
【Laravel】PHPUnitでテストコードを書くときのTipsやサンプルコード - Qiita
はじめてLaravel5でテストコードを書く。 - Qiita
【Laravel】PHPUnitでのテストコード実装超入門(ハンズオン) | yutaro blog
Laravelのtestで画面回りのテストをする - Qiita
【Laravel】テストを書くときによく使うコード集 | Public Constructor
Laravel Test についてのメモ | Hapicode
アサートの一覧
419エラーが発生した時は、VerifyCsrfTokenミドルウェアを書き換えずに、
php artisan config:clear を実行する。
Laravelのphpunitで419エラーが発生した場合の対処法
laravel phpunit実行時に419error: エンジニアとグルメ
参考
テスト駆動開発とは|Laravelでテスト駆動開発を学ぼう!|Techpit