Améliorez l'efficacité des tests avec les outils de couverture de code PHP

WBOY
Libérer: 2024-06-03 18:39:00
original
945 Les gens l'ont consulté

Comment utiliser PHPUnit pour la couverture du code PHP : installez PHPUnit. Configurez le fichier de configuration PHPUnit (phpunit.xml). Exécutez la commande de couverture de code (phpunit --coverage-html build/coverage). Expliquez le rapport : Couverture : lignes de code exécutées en pourcentage du total des lignes de code. Classes et méthodes remplacées : répertorie toutes les classes et méthodes remplacées. Code découvert : mettez en surbrillance les lignes de code qui n'ont pas été exécutées.

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

Couverture de code PHP à l'aide de PHPUnit

Introduction

La couverture de code est une technique de test qui mesure le nombre de lignes de code exécutées dans un programme. Cela permet d'identifier les chemins de code non testés et les bogues potentiels. PHPUnit est un framework de test PHP populaire qui fournit des outils de couverture de code intégrés.

Installez PHPUnit

Pour installer PHPUnit, utilisez Composer :

composer global require "phpunit/phpunit:^9"
Copier après la connexion

Configurez PHPUnit

Pour configurer PHPUnit dans votre projet, créez un fichier de configuration nommé phpunit.xml et ajoutez le contenu suivant :

<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>
Copier après la connexion

Run Code Coverage

Pour générer un rapport de couverture de code, exécutez la commande suivante :

phpunit --coverage-html build/coverage
Copier après la connexion

Expliquez le rapport de couverture de code

Le rapport généré affichera une interface HTML interactive.

  • Coverage : Indique le nombre de lignes de code exécutées en pourcentage du nombre total de lignes de code.
  • Classes et méthodes couvertes : répertorie toutes les classes et méthodes remplacées.
  • Uncovered Code : mettez en surbrillance les lignes de code qui ne sont pas exécutées.

Cas pratique

Considérez la classe PHP suivante :

class Calculator
{
    public function add(int $a, int $b): int
    {
        return $a + $b;
    }
}
Copier après la connexion

Pour la tester, nous créons un cas de test :

class CalculatorTest extends PHPUnit_Framework_TestCase
{
    public function testAdd()
    {
        $calculator = new Calculator();
        $this->assertEquals(3, $calculator->add(1, 2));
    }
}
Copier après la connexion

Exécutez PHPUnit et après avoir généré le rapport de couverture de code, vous pouvez voir les résultats suivants :

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

Time: 0 seconds, Memory: 4.00 MB

OK (1 test, 1 assertion)
Copier après la connexion

Le rapport indique que tout le code est couvert (100%).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal