Test des exceptions dans les fonctions Python avec assertions
L'écriture de code robuste implique souvent de gérer les exceptions de manière appropriée. S'assurer que les fonctions génèrent les exceptions attendues est essentiel pour tester leurs capacités de programmation défensive.
Question : Comment puis-je écrire un test unitaire qui vérifie si une fonction Python génère une exception spécifique ?
Réponse : Utilisez la méthode assertRaises du module unittest. Cette méthode prend deux arguments : la classe d'exception attendue et la fonction à appeler. Si la fonction ne parvient pas à lever l'exception attendue sous test, le test échouera.
Exemple :
<code class="python">import mymod import unittest class MyTestCase(unittest.TestCase): def test1(self): self.assertRaises(SomeCoolException, mymod.myfunc)</code>
Dans cet exemple, la méthode de test test1 affirme que la fonction myfunc du module mymod lève une exception de type SomeCoolException lorsqu'elle est appelée. Le test échoue si l'exception n'est pas levée.
Cette technique est un moyen concis et efficace de vérifier les capacités de gestion des exceptions des fonctions Python, en garantissant qu'elles se comportent comme prévu dans différents scénarios.
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!