2019年3月PHPUnit_その3(データプロバイダ)福岡拠点の永嵜です。前回に引き続きPHPUnitの機能を紹介します。今回はデータプロバイダ機能を紹介します。データプロバイダ機能とは、テストメソッドに任意の引数を渡せる機能です。データプロバイダを使用すると同じテストメソッドで様々なテストができる利点があります。例題を示しながら説明します。前回使用したテストケースにデータプロバイダを追加します。10],];}}traiangleProviderメソッドがデータプロバイダになります。10※1]がテストメソッドに渡す引数になります。[横、縦、想定値]のデータをテストメソッドに渡します。配列一つが1テスト用のデータになります。今回データプロバイダの説明のために想定値に誤った値を設定してテスト失敗を発生させています。データプロバイダのデータにラベルを付けることができます。pattern’)ラベルを付けることによってテスト失敗時にどのデータで失敗しているかを確認しやすくなります。データプロバイダからデータを受け取るにはテストメソッドに@dataProviderアノテーションを付けます。pattern’のデータでテスト失敗となりました。実行時にfilterオプションを使用すると実行したいテストデータだけテストすることができます。assertion)最後に前回、今回、PHPUnitの概要を説明しましたが、PHPUnitにはコマンドオプション、アノテーション、アサーションなど他にも便利な機能があるので詳細を知りたい方は下記をチェックしてみてください。PHPUnitPHPUnit_その2(実行手順)福岡拠点の永嵜です。前回に引き続き、PHPUnitを紹介します。今回はPHPUnitの実行手順を紹介します。使用してインストールした環境で行います。PHPUnitの実行PHPUnitでは理解するべき3つの要素があります。1テスト対象クラスユニットテストを行うテスト対象のクラスです。2テストケースクラステストケースは原則としてテスト対象クラスに対して1つ作成します。一般的にテストするクラス名の末尾に「Test」という文字列を付与したものをテストケース名とします(ファイル名はテストケースクラス名.php)。テストケースクラス名.php※1:vendorフォルダー配下にあります。3テストメソッドテストケース内に記述するメソッドです。実際にテストをする単位となります。テストメソッドの名称は「test」で始まる文字列にする必要があります。※@testアノテーションを使用する場合は、「test」でなくてもよいです。実際にテストケースを作成し、実行してみましょう。ディレクトリを作成します。■テスト対象作成テスト対象となるクラスを用意します。2;}}引き数で横、高さを受け取り三角形の面積を返すクラスです。■テストケースとテストメソッド作成テスト対象が完成したらテストケースとテストメソッドを作成します。ファイルを作成し、次のように記入します。$height(高さ)で計算した面積が正しいかをテストしています。テストメソッドではアサーションと呼ばれる結果判定メソッドを使用します。今回の例ではassertEqualsがアサーションメソッドになります。つの引数が等しくない場合エラーとするメソッドです。$expectedに想定値、$actualに実測値を設定しassertEqualsで判定しています。図1図1のように開発用ディレクトリ(Sample)内にテスト対象(AreaCalc)とテストケース(AreaCalcTest)を配置しています。コマンドを実行してユニットテストを行います。phpunitはPHPUnitをインストールしたディレクトリのvendor\binフォルダ配下にシンボリックリンクがあります。全てのテストケースの実行、特定のテストケースだけ実行どちらもできます。今回はテストケースが1つですが1の方法で実行します。test\AreaCalcTest※上記方法以外にもコマンドオプションで制御する方法があります。PHPUnitマニュアルをご確認ください。コマンドプロンプトを開き次のように入力します。ディレクトリ内のファイルをテストケースとしてテストが実行されます。test\■テスト結果テストが実行されるとテスト結果ステータス(4行目)が表示されます。2を引数で与えると4が返ってくる)テスト成功.(ドット)となっています。assertion)他のステータス表示は以下のようになります。以上がPHPUnitによる一連のテスト手順となります。次回は今回実行したサンプルプログラムに手を加え、データプロバイダ機能について説明したいと思います。PHPUnitPHPUnit_その1(インストール)福岡拠点の永嵜です。PHPUnitを使用する機会があったのでPHPUnitの使い方を紹介します。本ブログでは下記の流れで説明していきます。■PHPUnitPHPで実装されたプログラムのユニットテスト(単体テスト)※1を自動化するためのテスティングフレームワークです。※1:ユニットテストユニットテストとはクラスや関数などプログラムを構成する小さな単位(ユニット)で個々の動作を確認するためのテストです。インストールPHPUnitを使用するためにPHPUnitのインストールを行います。インストールは下記方法があります。・公式サイトから直接ダウンロードする。利用する今回はComposerを利用した手順でインストールを行います。設置し、次のように記入します。"*"}}2コマンドプロンプトで下記コマンドを実施します。update3インストール結果を確認します。ディレクトリが生成されます。・下記コマンドを開発用ディレクトリにで実行しPHPUnitが実行できることを確認します。実行ができたらインストールしたPHPUnitのバージョンが表示されます。--version以上がPHPUnitのインストール手順となります。次回はPHPUnitを実行する手順について説明したいと思います。