phpunit + laravel = ? の話

らんらららららべる

どもー ワシです!

今日はリハビリ的に書いています。

本日の話題はPHPUnit!です。
PHPUnitとは、まっ言わずと知れたxUnitシリーズのPHP版で…
テストです、テストです、テストです!
それをLaravelちゃんで今更します。

Laravelのプロジェクトの作成はシンプルコマンド Composerに感謝

$ composer create-project laravel/laravel learning-phpunit

です、windowsの人は知りません。

  – Installing laravel/laravel (v6.2.0): Downloading (100%)         

なので6.2.0らしいです

はい、シンプルなLaravelの骨格が出来ました!

あとは、テストを作ります。

Future? Unit? な感じですがシンプルイズベスト
プロジェクトのルートに移動してテストコマンドの実行です

$ cd learning-phpunit
$ vendor/bin/phpunit

するってーと何かいという感じでテストが2つ実行されます。

PHPUnit 8.4.1 by Sebastian Bergmann and contributors.

..                                                                  2 / 2 (100%)

Time: 202 ms, Memory: 18.00 MB

OK (2 tests, 2 assertions)

はいはい、この二つの試験は…
laravelのおまけです。(半分嘘)

testsディレクトリ下にFeature / Unitのディレクトリが存在しますが、その中に存在しており、名前はなんと!ExampleTest.phpです…
ほんまにサンプルです

さて、サンプルはさておき、実際の試験の作り方です。

プロジェクトルートで

$ php artisan make:test HelloTest

シンプルすぎて説明がめんどくさいですが、正しく作成されると
Test created successfully.
が出ます。

このコマンドではFeatureでしたが、

$ php artisan make:test HelloTest –unit

で Unitテストが作られます。

確認方法は先ほどのディレクトリ下にphpファイルが作成されます!

んで、実際に実行すると…

$ vendor/bin/phpunit
PHPUnit 8.4.1 by Sebastian Bergmann and contributors.

....                                                                4 / 4 (100%)

Time: 253 ms, Memory: 18.00 MB

OK (4 tests, 4 assertions)

はいはーい、サンプルの2つ + コマンドで作成した試験 2つの合計4つ作成されます

ん?何が美味しいかって?

それは次回のお楽しみ