今回は、Laravel入門書の最後の項目である「ユニットテスト」で発生したエラーについてです!
( 参考書:Laravel入門(Laravel6), PC:Mac, Laravelバージョン:Laravel8 )
早速ですが、Laravel入門p.340,345,347のところで、PHPUnitを実行する為に、
$ vendor/bin/phpunit
参考書の通りこちらのコマンドをターミナルで実行したところ、下記のエラーが発生しました。
No tests executed!
No tests executed!
このエラーが出たら先ず、PHPUnitを実行するテストクラスの配置を確認します。
Laravelでのテストは、Feature
とUnit
ディレクトリに分かれていて、
Feature
はControllerのテスト
でUnit
はそれ以外のテスト
という位置づけです。
デフォルトでは、tests/Feature
とtests/Unit
ディレクトリにテストクラスを配置する必要があります。
この時点で上記のディレクトリにテストクラスがないと今回のようなエラーが発生しますが、
僕の場合ディレクトリの配置は特に問題ありませんでした!
解決方法
今回の場合は、PHPUnit実行コマンドを下記のように変更したことで、正常にテストが実行され、テスト判定も問題なくOKが出ました!
$ vendor/bin/phpunit
↓ //変更
$ vendor/bin/phpunit tests/Unit/ExampleTest.php