Assertion de la gestion des exceptions dans PHPUnit
Tester la gestion des exceptions est un aspect crucial pour garantir la robustesse du code. Dans PHPUnit, il existe une approche simple pour affirmer l'occurrence d'une exception.
Utilisation des méthodes d'assertion
PHPUnit propose la méthode expectException() pour vérifier l'exception attendue. Il est recommandé de fournir la classe d'exception comme argument de cette méthode. Par exemple :
<code class="php"><?php $this->expectException(\InvalidArgumentException::class); // Code that is expected to throw an InvalidArgumentException</code>
Cette assertion entraînera la réussite du test si une InvalidArgumentException est levée. PHPUnit gère cela en enregistrant un gestionnaire d'exceptions qui intercepte l'exception et définit le statut du test sur réussite.
Old Way (PHPUnit < 5.2)
Avant PHPUnit 5.2 , la méthode setExpectedException() a été utilisée. La syntaxe est similaire, mais elle nécessite trois arguments :
$this->setExpectedException(
\InvalidArgumentException::class,
'Error message',
1 // Optional exception code
);Bonnes pratiques
Pour garantir des tests précis, il est essentiel de tester une classe d'exception spécifique et de garantir que l'exception est levée dans la portée appropriée. De plus, il est recommandé d'utiliser expectException() plutôt que setExpectedException() pour l'approche la plus à jour.
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!