Utilisation des Méthodes Assert dans Unittest : Validation des Résultats de Test
Les méthodes assert font partie de la classe unittest.TestCase et servent à vérifier des conditions dans vos tests.
En résumé, chaque méthode de test dans la classe Test se termine par une instruction telle que self.assert.
Méthodes assert couramment utilisées
| Méthode | Vérification | Exemple |
|---|---|---|
| assertEqual(a, b) | a == b | assertEqual(sum([1, 2, 3]), 6) |
| assertNotEqual(a, b) | a != b | assertNotEqual(1, 2) |
| assertTrue(x) | bool(x) est True | assertTrue(isinstance(123, int)) |
| assertFalse(x) | bool(x) est False | assertFalse(isinstance("hello", int)) |
| assertIs(a, b) | a est b | a = 1, b = a |
| assertIsNone(x) | x est None | book.price = None |
| assertIn(a, b) | a dans b | assertIn(2, [1, 2, 3]) |
| assertIsInstance(a, b) | isinstance(a, b) | assertIsInstance(123, int) |
De plus, assertRaises(Error, func, *args, **kwargs) est utilisé pour vérifier qu'une erreur est levée. Par exemple :
with self.assertRaises(ValueError):
int("xyz")
Cela vérifie que la conversion de "xyz" en entier lève une exception ValueError.
Swipe to start coding
Votre tâche consiste à vous exercer à l'utilisation des différentes méthodes assert du framework unittest. Complétez la classe TestFunctions en écrivant des méthodes de test distinctes pour chacune des vérifications suivantes. Utilisez exactement les noms de méthodes indiqués ci-dessous pour chaque vérification.
- Vérifier que
add(2, 3)renvoie5avecassertEqual. Nom de la méthode :test_add_equal. - Vérifier que
add(2, 2)ne renvoie pas5avecassertNotEqual. Nom de la méthode :test_add_not_equal. - Vérifier que
is_even(4)renvoieTrueavecassertTrue. Nom de la méthode :test_is_even_true. - Vérifier que
is_even(5)renvoieFalseavecassertFalse. Nom de la méthode :test_is_even_false. - Vérifier que le résultat de
get_item([10, 20, 30], 1)est le même objet que20avecassertIs. Nom de la méthode :test_get_item_is. - Vérifier que
get_item([1, 2, 3], 10)renvoieNoneavecassertIsNone. Nom de la méthode :test_get_item_is_none. - Vérifier que
2est dans la liste[1, 2, 3]avecassertIn. Nom de la méthode :test_in_list. - Vérifier que le résultat de
add(1, 2)est une instance deintavecassertIsInstance. Nom de la méthode :test_add_is_instance.
Écrivez une méthode de test pour chaque vérification et utilisez uniquement les noms de méthodes spécifiés ci-dessus. Chaque méthode de test doit utiliser une seule méthode assert.
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Can you explain the difference between assertEqual and assertIs?
What happens if an assertion fails in a test?
Can you give more examples of using assertRaises?
Génial!
Completion taux amélioré à 3.13
Utilisation des Méthodes Assert dans Unittest : Validation des Résultats de Test
Glissez pour afficher le menu
Les méthodes assert font partie de la classe unittest.TestCase et servent à vérifier des conditions dans vos tests.
En résumé, chaque méthode de test dans la classe Test se termine par une instruction telle que self.assert.
Méthodes assert couramment utilisées
| Méthode | Vérification | Exemple |
|---|---|---|
| assertEqual(a, b) | a == b | assertEqual(sum([1, 2, 3]), 6) |
| assertNotEqual(a, b) | a != b | assertNotEqual(1, 2) |
| assertTrue(x) | bool(x) est True | assertTrue(isinstance(123, int)) |
| assertFalse(x) | bool(x) est False | assertFalse(isinstance("hello", int)) |
| assertIs(a, b) | a est b | a = 1, b = a |
| assertIsNone(x) | x est None | book.price = None |
| assertIn(a, b) | a dans b | assertIn(2, [1, 2, 3]) |
| assertIsInstance(a, b) | isinstance(a, b) | assertIsInstance(123, int) |
De plus, assertRaises(Error, func, *args, **kwargs) est utilisé pour vérifier qu'une erreur est levée. Par exemple :
with self.assertRaises(ValueError):
int("xyz")
Cela vérifie que la conversion de "xyz" en entier lève une exception ValueError.
Swipe to start coding
Votre tâche consiste à vous exercer à l'utilisation des différentes méthodes assert du framework unittest. Complétez la classe TestFunctions en écrivant des méthodes de test distinctes pour chacune des vérifications suivantes. Utilisez exactement les noms de méthodes indiqués ci-dessous pour chaque vérification.
- Vérifier que
add(2, 3)renvoie5avecassertEqual. Nom de la méthode :test_add_equal. - Vérifier que
add(2, 2)ne renvoie pas5avecassertNotEqual. Nom de la méthode :test_add_not_equal. - Vérifier que
is_even(4)renvoieTrueavecassertTrue. Nom de la méthode :test_is_even_true. - Vérifier que
is_even(5)renvoieFalseavecassertFalse. Nom de la méthode :test_is_even_false. - Vérifier que le résultat de
get_item([10, 20, 30], 1)est le même objet que20avecassertIs. Nom de la méthode :test_get_item_is. - Vérifier que
get_item([1, 2, 3], 10)renvoieNoneavecassertIsNone. Nom de la méthode :test_get_item_is_none. - Vérifier que
2est dans la liste[1, 2, 3]avecassertIn. Nom de la méthode :test_in_list. - Vérifier que le résultat de
add(1, 2)est une instance deintavecassertIsInstance. Nom de la méthode :test_add_is_instance.
Écrivez une méthode de test pour chaque vérification et utilisez uniquement les noms de méthodes spécifiés ci-dessus. Chaque méthode de test doit utiliser une seule méthode assert.
Solution
Merci pour vos commentaires !
single