Maison  >  Article  >  développement back-end  >  Tests unitaires PHP avec PHPUnit

Tests unitaires PHP avec PHPUnit

王林
王林original
2023-05-29 08:01:351201parcourir

Avec le développement d'Internet, PHP est devenu un langage de programmation très populaire. De nombreux sites Web et applications utilisent PHP pour implémenter la logique métier. Cependant, dans les applications volumineuses, il est difficile de déterminer s'il existe un problème avec une certaine fonction ou méthode en raison de la complexité et de la taille du code. Pour résoudre ce problème, les développeurs doivent effectuer des tests unitaires pour garantir l'exactitude et la fiabilité du code. PHPUnit est un outil de test unitaire PHP très couramment utilisé.

Installation et configuration de PHPUnit

PHPUnit est un framework de tests unitaires PHP qui peut être utilisé pour tester des applications et des bibliothèques basées sur PHP. C'est gratuit et largement utilisé. Ici, nous allons présenter comment installer PHPUnit.

Assurez-vous d’abord que PHP est installé dans votre environnement de développement. PHPUnit peut être installé via composer. Les étapes d'installation sont les suivantes :

  1. Ouvrez le terminal et entrez le répertoire de votre projet.
  2. Exécutez la commande composer require --dev phpunit/phpunit, qui installera PHPUnit dans le répertoire de votre projet. composer require --dev phpunit/phpunit,这将会安装PHPUnit到您的项目目录中。
  3. 确认PHPUnit已成功安装,运行命令 vendor/bin/phpunit --version
  4. Confirmez que PHPUnit a été installé avec succès. Exécutez la commande vendor/bin/phpunit --version et les informations de version de PHPUnit seront affichées. Si le résultat réussit, cela prouve que PHPUnit a été installé avec succès et les tests unitaires peuvent commencer.

Utilisation de PHPUnit

Pour l'utilisation de PHPUnit, nous prenons un exemple simple. Supposons qu'il existe un module tableau avec deux fonctions : arraySum et arrayAvg. Nous devons tester unitairement ces fonctions.

Dans la première étape, nous devons créer une classe de test pour chaque fonction. Ces classes de test doivent être placées dans le répertoire tests et suivre la convention « nom de fonction » + « Test » (c'est-à-dire : arrayTest.php).

La deuxième étape consiste à rédiger des cas de test. Nous utilisons des assertions pour vérifier que la sortie de chaque fonction est correcte. Voici un exemple de code de test :

class arrayTest extends PHPUnit_Framework_TestCase {
  public function testArraySum() {
    $this->assertEquals(6, arraySum(array(1,2,3)));
    $this->assertEquals(0, arraySum(array()));
  }

  public function testArrayAvg() {
    $this->assertEquals(2, arrayAvg(array(1,2,3)));
    $this->assertEquals(0, arrayAvg(array()));
  }
}

Dans cet exemple, nous avons écrit deux cas de test, un testant la fonction arraySum et un testant la fonction arrayAvg. Chaque scénario de test vérifie que la sortie de la fonction est correcte.

La troisième étape consiste à exécuter le test. Exécutez la commande suivante sur le terminal :

vendor/bin/phpunit tests/

Cette commande indique à PHPUnit d'exécuter tous les cas de test dans le répertoire tests.

Exécutez le test avec succès, PHPUnit affichera les résultats du test :

PHPUnit 5.7.0 by Sebastian Bergmann and contributors.

...

Time: 49 ms, Memory: 4.00MB

OK (3 tests, 3 assertions)

Dans cet exemple, nous n'avons que deux cas de test, PHPUnit génère 1 point pour indiquer que chaque cas de test a réussi, un total de 3 tests ont été exécutés et 3 vérifié une affirmation.

Conclusion

PHPUnit est un puissant outil de test unitaire PHP qui aide les développeurs à vérifier l'exactitude et la fiabilité de leur code de manière reproductible. Cet article présente l'installation et l'utilisation de PHPUnit, dans l'espoir d'aider les lecteurs à mieux comprendre et utiliser PHPUnit pour les tests unitaires PHP. 🎜

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!

Déclaration:
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