業務改善 web開発 programming 旅行系記事多め。

PHPUnitでユニットテストをする(準備編)-Laravel5

jQueryPHP

 

ぱらげです。

 

Laravelに組み込まれている「PHPUnit」を使ってプログラム動作を確認。 忘れないように以下に流れを書いておきたいと思います。(使用中のデータベースは既にあって、今回はテスト用のデータベースを新たに作るという設定です)

 

流れ

データベースを準備

 

mysql -u root

でSQLに入る。

 

mysql> create database test; mysql> use test; mysql> grant all privileges on test.* to ‘pararinrinrin’;

テスト用のデータベースを作ります。testの部分はわかりやすい名前で自由につけます。

3行目の’pararinrinrin’の中は.envファイルの中のDB_USERNAMEに書いてあるユーザーネームを入力し、アクセス権限を許可します。(これをやっておかないと、あとでデータベース系のテストをするときに「SQLSTATE[HY000] [1044] Access denied for 〜なんちゃら」とかいうエラーが出てしまいますのでお忘れなく)

 

 

phpunit.xmlに追記

 

タグの中に以下の内容を追記します。

 

env name=”DB_DATABASE” value=”test”/

 

.envの情報を変更

 

.envの以下の情報をテスト用のデータベース名に変更します。

 

DB_DATABASE=test

 

 

ダミーレコードを準備

 

テストで利用するダミーレコードの情報を用意します。

「database」の中の「factories」フォルダの中にある「UserFactory(あるいはModelFactory).php」というファイルがあります

サンプルでUserモデルクラスが既に用意されています。この他にテストしたいモデルがあればその情報も書きくわえます。

 

 

ユニットテストファイルを作る

 

php artisan make:test UserTest

 

UserTestの名前もわかりやすいようにつけましょう。

この中でテストしたい内容について記述をしていくことになります。

 

ちなみに記述し終えたら、

vendor/bin/phpunit

コマンドでターミナルにテスト結果を表示させます。(windowsの場合は上記コマンドのスラッシュをバックスラッシュにします)

 

以上ざっくりとPHPUnitの使用方法についてでした。

 

コメント

タイトルとURLをコピーしました