ホームページ >バックエンド開発 >PHPチュートリアル >PHP開発におけるコードカバレッジテストにPHPUnitを使用する方法

PHP開発におけるコードカバレッジテストにPHPUnitを使用する方法

PHPz
PHPzオリジナル
2023-06-27 09:24:56606ブラウズ

PHP 開発者にとって、コード カバレッジ テストに PHPUnit を使用することは非常に重要なタスクです。コード カバレッジ テストは、開発者が作成したコードにテストされていない部分がないか、テスト カバレッジが十分に高いかどうかを確認するのに役立ちます。この記事では、コードカバレッジテストにPHPUnitを使用する方法を紹介します。

まず、PHPUnit をインストールする必要があります。 Composer を使用して PHPUnit をインストールできます:

composer require --dev phpunit/phpunit

インストールが完了したら、ターミナルで次のコマンドを実行して、PHPUnit が正常にインストールされたかどうかを確認できます:

php vendor/bin/phpunit --version

次に、テスト PHPUnit を実行する前に構成してください。プロジェクトのルート ディレクトリに次の内容の phpunit.xml ファイルを作成します。

<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="false"
         backupStaticAttributes="false"
         colors="true"
         convertErrorsToExceptions="true"
         convertNoticesToExceptions="true"
         convertWarningsToExceptions="true"
         processIsolation="false"
         stopOnFailure="false">
    <testsuites>
        <testsuite name="Example Test Suite">
            <directory>tests</directory>
        </testsuite>
    </testsuites>
    <filter>
        <whitelist processUncoveredFilesFromWhitelist="true">
            <directory suffix=".php">src</directory>
        </whitelist>
    </filter>
</phpunit>

この構成ファイルは、テスト実行時にどのファイルを含める必要があるかを PHPUnit に指示し、テスト実行中のいくつかのエラーも構成します。

テスト コードを記述する前に、以下の簡単な例を見てみましょう:

<?php

class Foo
{
    public function bar()
    {
        return true;
    }
}

これは非常に単純な PHP クラスで、 bar() というパブリック メソッドが含まれており、ブール値を返します。価値。次に、このクラスのテストを作成して、期待どおりに動作することを確認する必要があります。 FooTest.php という名前のテスト ディレクトリに次の内容のテスト ファイルを作成します。

<?php
    
use PHPUnitFrameworkTestCase;

class FooTest extends TestCase
{
    /** @test */
    public function it_should_return_true()
    {
        $foo = new Foo;
        $this->assertTrue($foo->bar());
    }
}

このテストは非常に簡単です。クラス Foo をインスタンス化し、その bar() メソッドが true を返すことを確認します。これで、テストを実行し、PHPUnit によって生成されたカバレッジ レポートを表示できるようになりました。ターミナルで次のコマンドを実行します。

php vendor/bin/phpunit --coverage-html coverage

このコマンドは HTML カバレッジ レポートを生成し、プロジェクト ルート ディレクトリの下のカバレッジ ディレクトリに保存します。レポートを開くと、クラス Foo のコード カバレッジが 100% であることがわかります。これは、私たちが作成したテストがクラス Foo のすべてのコードをカバーしたことを意味します。

一般に、PHPUnit は、高品質の PHP コードを作成するのに役立つ非常に強力なテスト ツールです。コード カバレッジ テストは PHPUnit の重要な機能であり、作成したテストがコードのあらゆる部分をカバーしていることを保証します。プロジェクトのコード カバレッジ テストに PHPUnit を使用すると、コードの品質が大幅に向上し、潜在的なエラーや抜け穴を回避できます。

以上がPHP開発におけるコードカバレッジテストにPHPUnitを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。