Verbessern Sie die Testeffizienz mit PHP-Code-Coverage-Tools

WBOY
Freigeben: 2024-06-03 18:39:00
Original
901 Leute haben es durchsucht

So verwenden Sie PHPUnit für die PHP-Codeabdeckung: Installieren Sie PHPUnit. Konfigurieren Sie die PHPUnit-Konfigurationsdatei (phpunit.xml). Führen Sie den Befehl zur Codeabdeckung aus (phpunit --coverage-html build/coverage). Erläutern Sie den Bericht: Abdeckung: Ausgeführte Codezeilen als Prozentsatz der gesamten Codezeilen. Überschriebene Klassen und Methoden: Listet alle überschriebenen Klassen und Methoden auf. Aufgedeckter Code: Markieren Sie Codezeilen, die nicht ausgeführt wurden.

使用 PHP 代码覆盖工具提高测试效率

PHP-Codeabdeckung mit PHPUnit

Einführung

Codeabdeckung ist eine Testtechnik, die die Anzahl der in einem Programm ausgeführten Codezeilen misst. Dies hilft, ungetestete Codepfade und potenzielle Fehler zu identifizieren. PHPUnit ist ein beliebtes PHP-Testframework, das integrierte Tools zur Codeabdeckung bietet.

PHPUnit installieren

Um PHPUnit zu installieren, verwenden Sie Composer:

composer global require "phpunit/phpunit:^9"
Nach dem Login kopieren

Konfigurieren Sie PHPUnit

Um PHPUnit in Ihrem Projekt zu konfigurieren, erstellen Sie eine Konfigurationsdatei mit dem Namen phpunit.xml und fügen Sie den folgenden Inhalt hinzu:

<phpunit>
    <testsuites>
        <testsuite name="MyTestSuite">
            <directory>tests</directory>
        </testsuite>
    </testsuites>
    <filter>
        <whitelist processUncoveredFilesFromWhitelist="true">
            <directory suffix=".php">src</directory>
        </whitelist>
    </filter>
    <logging>
        <log type="coverage-html" target="build/coverage" />
    </logging>
</phpunit>
Nach dem Login kopieren

Code ausführen Alter

Um einen Code-Coverage-Bericht zu generieren, führen Sie den folgenden Befehl aus:

phpunit --coverage-html build/coverage
Nach dem Login kopieren

Explain Code Coverage Report

Der generierte Bericht zeigt eine interaktive HTML-Oberfläche an.

  • Abdeckung: Gibt die Anzahl der ausgeführten Codezeilen als Prozentsatz der Gesamtzahl der Codezeilen an.
  • Abgedeckte Klassen und Methoden: Listet alle überschriebenen Klassen und Methoden auf.
  • Ungedeckter Code: Markieren Sie Codezeilen, die nicht ausgeführt werden.

Praktischer Fall

Betrachten Sie die folgende PHP-Klasse:

class Calculator
{
    public function add(int $a, int $b): int
    {
        return $a + $b;
    }
}
Nach dem Login kopieren

Um sie zu testen, erstellen wir einen Testfall:

class CalculatorTest extends PHPUnit_Framework_TestCase
{
    public function testAdd()
    {
        $calculator = new Calculator();
        $this->assertEquals(3, $calculator->add(1, 2));
    }
}
Nach dem Login kopieren

Führen Sie PHPUnit aus und nach dem Generieren des Code-Coverage-Berichts können Sie die folgenden Ergebnisse sehen:

.......                                  6 / 6 (100%)

Time: 0 seconds, Memory: 4.00 MB

OK (1 test, 1 assertion)
Nach dem Login kopieren

Der Bericht gibt an, dass der gesamte Code abgedeckt ist (100 %).

Das obige ist der detaillierte Inhalt vonVerbessern Sie die Testeffizienz mit PHP-Code-Coverage-Tools. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!