> Modules standards > Autres modules > pytest
pytest
pytest :
- fixture : fonction qui permet de préparer les données ou l'état avant d'exécuter la fonction de test, mais en fait, elle peut aussi faire une partie du test.
- fonction de test : effectue le test effectif.
Fonctions de test :
- leur nom doit commencer par test_
- elle prennent comme arguments des fixtures.
- pytest exécute les fixtures passées en argument, et fourni leur résultat à la fonction de test.
- 2 tests peuvent utiliser la même fixture et travailleront sur des données complètement indépendantes.
- au cours d'un test, si on appelle 2 fois la même fixture, on aura la même données par la fixture ne sera en fait appelée qu'une seule fois (résultat en cache).
- une fixture décorée avec @pytest.fixture(autouse = True) est appelée automatiquement pour tout test.
- une fixture décorée avec @pytest.fixture(scope = 'module') n'est appelée qu'une seule fois par module (et non un fois par test du module).
- une fixture peut avoir un yield au lieu d'un return : comme ça, le contrôle retourne dans la fixture après l'exécution du test, et la fixture peut effectuer du ménage.
Debugging :
- stdout et stderr sont capturés.
- on peut imprimer du debug en utilisant simplement print()
pytest -k test_myFunc : teste seulement test_myFunc
Copyright python-simple.com
programmer en python, tutoriel python, graphes en python, Aymeric Duclert