[PYTHON] résumé pytest

1.install

pip install pytest pytest-pep8 pytest-cov

2.write test code

test_hoge.py


import pytest

def TestClass:
	def pytest_funcarg__hoge(request):
		return Hoge(1)
		
	def test_type(self, hoge):
		assert isinstance(hoge, Hoge)

pytest_funcarg__hoge est comme setup, qui est exécuté lorsque chaque test est exécuté et passé comme argument du test. C'est pratique car vous n'avez pas besoin de self.hoge. Cependant, il s'agit d'un style ancien et l'utilisation d'un décorateur est une nouvelle façon.

test_hoge.py


import pytest

def TestClass:
	@pytest.fixture()
	def hoge(request):
		return Hoge(1)
		
	def test_type(self, hoge):
		assert isinstance(hoge, Hoge)

3.run tests

py.test --verbose --cov . --cov-report=html --pep8

4.write production code

hoge.py


class Hoge:
	def __init__(self, v):
		self.val = v

5.write test code

test_hoge.py


class MockClass:
	def method1(self, p1, p2):
		pass
		
class TestClass:
	@pytest.fixture()
	def mockclass(request):
		return MockClass()
	
	def test_method1(self, mockclass, monkeypatch):
		monkeypatch.setattr(module1, 'method1', mockclass.method1)
		val = module1.method1(p1, p2)
		assert val == "..."

Recommended Posts

résumé pytest
résumé de l'utilisation de pytest
pytest
Résumé Python
Résumé de Django
Résumé de python-pptx
mémo pytest
Résumé Linux
Résumé Python
Résumé de Django
résumé pyenv
Résumé de la chaîne de caractères 1
Résumé matplotlib
AtCoderBeginnerContest180 Examen et résumé
Résumé de Kaggle: Outbrain # 2
Résumé de la bibliothèque LINQ
Résumé de la configuration du Sphinx
AtCoderBeginnerContest181 Examen et résumé
Résumé de la technologie numérique
AtCoderBeginnerContest182 Examen et résumé
Résumé du didacticiel Python
résumé grammatical de blockdiag
AtCoderBeginnerContest183 Review & Résumé
Résumé des commandes Linux
AtCoderBeginnerContest179 Review & Résumé
mise à jour, résumé de la mise à niveau
Résumé des entrées standard
Résumé du filtre Django
résumé relatif à python
Résumé de la conférence informatique 2020
Visualisez les statistiques récapitulatives
Résumé de la commande Docker
Résumé des bases de Python
Résumé lié à Kaggle