Formation gratuite Python
J'ai reçu le code de test de la syntaxe et de la référence de flux unittest, et je veux essayer de lancer une classe, disons TestSkip
de Unittest, Nosetests, et Pytest, pour comparer le flux de contrôle.
Par conséquent, j'ai besoin pour chaque cadre:
- La possibilité de le rendre aussi silencieux que possible (-q pour tous)
- L'option pour désactiver la capture de sortie (-s fonctionne à la fois pour pytest et nose, pas nécessaire pour unittest)
- La façon d'appeler une classe individuelle (c'est là où ils diffèrent tous.
Test de l'unité
Spécifier nom_module.nom_classe
, ainsi:
python -m unittest -q test_fixtures.TestSkip
python –m Test de l'unité –q test_fixtures.TestSkip |
nosetests
Spécifier nom_module: nom_classe
, ainsi:
nosetests -q -s test_fixtures: TestSkip
nosetests –q –s test_fixtures:TestSkip |
pytest
Spécifier nom_fichier.py::className
, ainsi:
py.test -q -s test_fixtures.py::TestSkip
py.tester –q –s test_fixtures.py::TestSkip |
J'ai décrit à l'origine en utilisant -k expression
choisir le test – Merci Holger, pour la correction et les infos !!
Résultats préliminaires
Je suis encore en train de comparer les performances les plus strictes du nez et du py.test.
Cependant, jusqu'à présent, ils ont tous deux l'air plutôt bien, à une exception près.
Il ne semble pas que la version de pytest que j’exécute (2.3.5) supporte unittest setUpModule ()
et tearDownModule ()
.
Je sais qu'il supporte le nez setup_module ()
et teardown_module ()
, mais apparemment pas la moindre orthographe de ces fonctions.
Je vais faire une comparaison plus approfondie dans un prochain article.
[ad_2]