PHP 関数の単体テストとカバレッジ分析: 単体テストには PHPUnit を使用し、.test.php ファイルを作成して個々の関数を分離してテストします。 phpunit コマンドを使用して単体テストを実行します。 phpunit --coverage-html を使用してカバレッジを分析し、テスト済みのコード行と未テストのコード行を示すレポートを生成します。 PHPUnit のインストール、単体テストの作成、テストの実行、カバレッジの分析、カスタム追加関数を使用したこのプロセスのデモンストレーション。
PHP 関数の単体テストとカバレッジ分析
PHP で高品質のコードを作成するには、機能することを確認するための厳密なテストが必要です。正しく実行され、期待される結果が得られます。単体テストは、個々の関数やメソッドを分離してテストする方法を提供し、カバレッジ分析はコードのどの部分がテストされたかを判断するのに役立ちます。
PHPUnit のインストール
PHPUnit は、人気のある PHP 単体テスト フレームワークです。これをインストールするには、Composer を使用します。
composer require --dev phpunit/phpunit
単体テストの作成
単体テストは、.test.php 拡張子を持つファイルを使用して作成されます。以下は、add 関数をテストする例です:
<?php use PHPUnit\Framework\TestCase; class AddFunctionTest extends TestCase { public function testAddNumbers() { $result = add(1, 2); $this->assertEquals(3, $result); } }
単体テストの実行
phpunit コマンドを使用して単体テストを実行します:
phpunit
カバレッジ率の分析
Phpunit には、カバレッジ レポートを生成するための組み込みオプションが用意されています:
phpunit --coverage-html
これにより、html## の下にカバレッジ レポートが生成されます。 # ディレクトリ。コード内のどの行がテストされ、どの行がテストされていないのかが表示されます。
実践的なケース
デモのために、カスタムの add 関数を作成し、それをテストするための単体テストを作成します:functions 。 php
<?php function add(int $num1, int $num2): int { return $num1 + $num2; }
AddFunctionTest.test.php
<?php use PHPUnit\Framework\TestCase; class AddFunctionTest extends TestCase { public function testAddNumbers() { $result = add(1, 2); $this->assertEquals(3, $result); } public function testAddNegativeNumbers() { $result = add(-1, -2); $this->assertEquals(-3, $result); }
phpunit
phpunit --coverage-html
add 関数が完全にカバーされていることが示されます。これは、そのすべてのコード パスが単体テストでカバーされていることを意味します。
以上がPHP 関数の単体テストとカバレッジ分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。