PHPUnit は、単体テストと機能テストを作成するための人気のある PHP テスト フレームワークです。 PHP プログラミングのテストに PHPUnit を使用すると、開発者が品質を向上させ、コード作成時のエラーを減らすことができます。さらに、PHPUnit を使用すると、開発者はコードをテストする時間を節約できます。いくつかの一般的な PHPUnit 操作を以下に紹介します。
1. PHPUnit のインストール
まず、PHPUnit をダウンロードしてインストールする必要があります。 PHPUnit は、ターミナルで次のコマンドを実行することでインストールできます:
composer require --dev phpunit/phpunit
2. テスト クラスの作成
PHPUnit テストを作成する前に、テスト クラスを作成する必要があります。テスト クラスには、接尾辞「Test」を付けたテスト対象クラスの名前を付ける必要があります。
3. テスト メソッドの作成
テスト クラスには、テスト メソッドのセットが含まれている必要があります。 PHPUnit がテストの実行時に認識できるように、テスト メソッドには「test」という接頭辞を付ける必要があります。例:
public function testAddition() { $result = 1+1; $this->assertEquals(2, $result); }
4. テストの実行
ターミナルで、次のコマンドを使用してテストを実行できます:
vendor/bin/phpunit test/MyClassTest.php
where "test/MyClassTest.php"はテストのクラスパスです。
5. アサーションを使用する
単体テストを実行するときは、コードの出力結果が期待どおりかどうかをテストする必要があります。 PHPUnit は、テスト用に複数のアサーションを提供します。たとえば、assertEquals() メソッドを使用して、2 つの値が等しいかどうかをテストできます。コード例:
public function testAddition() { $result = 1+1; $this->assertEquals(2, $result); }
この例では、テスト メソッドは式の評価結果と期待される結果を比較します。この 2 つが等しくない場合、テストは失敗します。
6. データプロバイダーの使用
場合によっては、異なる入力を使用して同じメソッドをテストする必要があります。 PHPUnit は、複数の入力セットを簡単にテストするためのデータ プロバイダー機能を提供します。次のコードは、テストにデータ プロバイダーを使用する例を示しています。
public function additionProvider() { return [ [0, 0, 0], [2, 2, 4], [2, -2, 0] ]; } /** * @dataProvider additionProvider */ public function testAddition($a, $b, $result) { $this->assertEquals($result, $a + $b); }
この例では、additionProvider() メソッドは、testAddition() メソッドの @DataProvider アノテーションを通じて使用されるデータのセットを提供します。 $a と $b の合計が $result に等しいかどうかをテストします。
7. 依存関係の注入を使用する
コードをテストするために、テスト中に依存関係の注入 (Dependency Injection、DI) を使用して、コードの依存関係をシミュレートする必要がある場合があります。 PHPUnit は、依存関係注入コンテナーを使用して依存関係をシミュレートできます。たとえば、次のコードは、テストで依存関係の注入を使用する例を示しています。
class MyClassTest extends PHPUnitFrameworkTestCase { protected $myClass; protected function setUp() : void { $container = new Container(); $myDep = $container->get('MyDependency'); $this->myClass = new MyClass($myDep); } public function testMyMethod() { // test the MyClass method } }
この例では、各テストの前に setUp() メソッドが呼び出され、テスト環境をセットアップします。このメソッドでは、依存関係注入コンテナーを使用してインスタンスを作成し、このインスタンスを使用して MyClass のインスタンスを作成します。 testMyMethod() メソッドでは、MyClass のメソッドをテストできます。
結論
PHPUnit は、開発者が高品質のコードを作成できるようにする人気の PHP テスト フレームワークです。この記事では、PHPUnit のインストール、テスト クラスとテスト メソッドの作成、テストの実行、アサーションの使用、データ プロバイダーの使用、依存関係注入の使用など、いくつかの一般的な PHPUnit 操作を紹介します。 PHPUnit をテストに使用すると、コードの信頼性と安定性が高まります。
以上がPHP プログラミングにおける一般的な PHPUnit 操作は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。