J'ai touché pytest, donc cette note.
Framework de test Python pytest: helps you write better programs ? pytest documentation
Si vous installez à partir de pip normalement, c'est OK
Installer pytest
pip install pytest
La méthode d'écriture de base est la suivante.
--Écrire en tant que programme Python
test_
--Faire démarrer la méthode par test_
de la classe commençant par Test
--Que le résultat soit OK ou NG est jugé par si le résultat de «affirmer une expression conditionnelle» est vrai ou faux.
――Ce n'est pas return
, c'est ʻassert`Testeur (programme exécuté à partir de pytest)
test_program.py
from my_funcs import add, sub
def test_add():
assert add(1, 2) == 3
def test_sub():
assert sub(3, 1) == 2
class TestCase:
def test_true(self):
assert True
def test_add_zero(self):
assert add(1, 0) == 1
Côté à tester
my_funcs.py
def add(a, b):
return a + b
def sub(a, b):
return a - b
Si vous exécutez pytest
normalement, il sera dans le répertoire courant.
Exécute automatiquement les fichiers dont les noms de fichier commencent par test_
ou se terminent par _test
.
Exécuter pytest
pytest
pytest Seul le test spécifié par le nom de programme du testeur
est exécuté.
Exécutez pytest avec un fichier
pytest test_program.py
filename ..
--Chacun de ces .
Correspond à result = OK
dans la fonction de testRésultat d'exécution
==================================== test session starts ====================================
platform linux -- Python 3.6.3, pytest-5.3.0, py-1.8.0, pluggy-0.13.1
rootdir: /mnt/c/Users/nab391/pytest
collected 2 items
test_example1-1.py .. [100%]
===================================== 2 passed in 0.02s =====================================
filename ..
F
--Après cela, la partie qui n'est pas passée à FAILURES
est affichée.Tester NG
==================================== test session starts ====================================
platform linux -- Python 3.6.3, pytest-5.3.0, py-1.8.0, pluggy-0.13.1
rootdir: /mnt/c/Users/nab391/pytest
collected 3 items
test_example1-1.py ..F [100%]
========================================= FAILURES ==========================================
________________________________________ test_false _________________________________________
def test_false():
> assert False
E assert False
test_example1-1.py:14: AssertionError
================================ 1 failed, 2 passed in 0.08s ================================
---s
: sortie standard de sortie (par défaut: non)
---v
: affiche les détails du résultat (par défaut: non)
Exemple de sortie détaillé
test_example1-1.py::test_add PASSED [ 50%]
test_example1-1.py::test_sub PASSED [100%]
###Comment lire le résultat de l'exécution
Recommended Posts