Cet article présente principalement le test unitaire php phpunit et analyse les concepts de base, les méthodes d'utilisation et les précautions associées du test unitaire php phpunit sous forme d'exemples. Les amis dans le besoin peuvent s'y référer
Le. les détails sont les suivants :
Qu'est-ce que les tests unitaires :
fait référence au test des unités de base du logiciel, telles que les fonctions, les méthodes, etc., pour vérifier si leurs valeurs de retour ou leurs comportements sont comme prévu ; le logiciel chinois actuel est très complexe, composé de nombreux composants, et le processus d'exécution est cohérent. Pour tester les fragments d'unité, vous devez fournir un contexte d'exécution (ou des paramètres) et un environnement (tels que). empiler pour simuler certains objets) pour l'exécution, et pour surveiller son comportement et la valeur de retour, nous devons écrire du code de programme pour ce faire. Un tel code est appelé un scénario de test. De nombreux scénarios de test sont organiquement combinés pour former un test global, également appelé. une suite de tests. Le code du programme testé est appelé code de production. Le logiciel phpunit est utilisé pour nous aider à rédiger des cas de tests et à réaliser des tests.
Tests unitaires PHP : phpunit
propose des tutoriels détaillés sur son site officiel. Voici quelques contenus supplémentaires.
Tout d'abord, vous devez comprendre que le logiciel phpunit lui-même est implémenté par le langage php. Son utilisation se fait via la ligne de commande, et non via le navigateur.
Il est important de comprendre cela. . De nombreux nouveaux arrivants sont coincés ici. C'est très basique et simple, mais il semble que cela n'ait pas été beaucoup mentionné
Après le téléchargement depuis le site officiel, vous obtiendrez un fichier phar. Pour une introduction au fichier d'archive phar, veuillez vous référer au fichier phar. article précédent : Concept et utilisation du format d'archive de développement PHP
Veuillez également télécharger la documentation d'utilisation de phpunit, installez-la selon la méthode d'installation à l'intérieur, puis entrez la commande suivante sur la ligne de commande :
phpunit --help
Si le message d'aide s'affiche, l'installation est réussie Créez un cas de test yunke.php dans le répertoire courant de la ligne de commande avec le contenu suivant :
<?php use PHPUnit\Framework\TestCase; class yunkeTest extends TestCase { public function testPushAndPop() { $stack = []; $this->assertEquals(0, count($stack)); array_push($stack, 'foo'); $this->assertEquals('foo', $stack[count($stack) - 1]); $this->assertEquals(1, count($stack)); $this->assertEquals('foo', array_pop($stack)); $this->assertEquals(0, count($stack)); } } ?>
Saisissez ensuite la commande suivante sur la ligne de commande :
phpunit yunke
Le contenu suivant s'affiche :
PHPUnit 5.7.12 by Sebastian Bergmann and contributors. . 1 / 1 (100%) Time: 159 ms, Memory: 7.00MB OK (1 test, 5 assertions)
Félicitations, vous avez réussi un test unitaire. La première ligne contient les informations sur l'auteur (Sebastian Bergmann aime le faire. être signé)
La deuxième ligne commence par un point, indiquant que tous les tests ont réussi
Vous vous demandez peut-être ce qui se passe avec le code php ci-dessus ?
Il s'agit d'un cas de test, qui teste simplement une opération de tableau. Les tests unitaires passent généralement par les quatre étapes suivantes :
1 Le test pour la classe de code de production Class est écrit dans la classe. Test de classe.
2. ClassTest hérite (généralement) de PHPUnitFrameworkTestCase.
3. Les tests sont toutes des méthodes publiques nommées test*. Vous pouvez également utiliser l'annotation @test
dans le bloc de commentaires de la documentation de la méthode (docblock) pour la marquer comme méthode de test.
4. Dans la méthode de test, des méthodes d'assertion similaires à assertEquals()
sont utilisées pour faire des assertions sur la correspondance entre la valeur réelle et la valeur attendue.
Vous pouvez être confus à plusieurs endroits ici :
1. Les annotations utilisées dans le bloc de commentaires peuvent être obtenues par PHP par réflexion, et le programme peut utiliser les informations obtenues pour la configuration
2 . D'où vient la classe TestCase dans le code du scénario de test dans la colonne ci-dessus ? Il n'a pas été chargé ?
Comme mentionné ci-dessus, phpunit lui-même est écrit en langage PHP et emballé dans phar pour être utilisé. phar est exécutable lors de l'exécution, exécutez d'abord le fichier stub dans le package
Vous pouvez suivre l'autre de Yunke ci-dessus. phar post a présenté la méthode pour extraire et restaurer le package phpunit.phar, ou utiliser un IDE comme phpstorm pour l'ouvrir directement
Dans .phar/stub.php vous verrez le code stub, la classe TestCase est The Le code de ligne de commande "phpunit yunke" requis dans le code stub exécutera d'abord le script phpunit, démarrera l'exécution à partir du fichier stub, puis chargera le code du scénario de test
par phpunit. voir le programme L'exécution ne démarre pas à partir du script du scénario de test Vous comprenez maintenant d'où vient la classe TestCase
Comment installer. PHPUnit dans l'environnement CentOS
Implémentation de la fonction de test automatisé de l'interface phpunit
Exemple détaillé de la méthode de test d'intégration PHPUnit du framework Yaf
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!