Junior — Middle
Comment PyTest détermine-t-il quelles fonctions ou cas de test doivent être exécutés lors du test ?
sobes.tech IA
Réponse de l'IA
PyTest détecte automatiquement les fonctions et méthodes de test selon des règles spécifiques de nommage et de structure. Par défaut, il recherche :
- Les fonctions dont le nom commence par
test_. - Les méthodes à l’intérieur des classes dont le nom commence par
test_, à condition que la classe commence également parTestet n’hérite pas deunittest.TestCase. - Les fichiers dont le nom commence par
test_ou se termine par_test.py.
Ainsi, PyTest parcourt les répertoires, trouve ces fichiers, les importe et exécute toutes les fonctions et méthodes correspondant à ces critères. Cela facilite l’organisation des tests sans avoir besoin de les enregistrer explicitement.
Exemple :
# test_example.py
def test_sum():
assert sum([1, 2, 3]) == 6
class TestMath:
def test_multiply(self):
assert 2 * 3 == 6
Lors de l’exécution de pytest, ces deux tests seront détectés et exécutés.