pytest-trinvis er en trinvis test runner (pytest plugin).
Hvad er en "trinvis test runner"?
Når vi taler om bygge-værktøjer er det almindeligt at henvise til de vilkår:
- Indledende (fuld) build - alle filer udarbejdes
- Inkremental build (eller delvis genopbygge) - blot ændrede filer udarbejdes
- Nej-op build - ingen filer er kompileret (ingen ændret siden sidste henrettelse)
Så en "trinvis test runner" vil kun re-udføre tests, der blev berørt af ændringerne i kildekoden siden sidste test udførelse.
Sådan virker det?
pytest-trinvis er en pytest plugin. Så hvis du kan køre din test suite med pytest du kan bruge pytest-trinvis.
Dette plugin vil analysere dine python kildefiler og gennem sin import definere afhængigheder af modulerne. doit anvendes til at holde styr på de afhængigheder og gemme resultaterne. Dette plugin vil ændre, hvordan pytest samle dine tests. pytest gøre resten af jobbet af faktisk kører testene og rapportering af resultaterne.
Installer:
pytest-trinvis testes på python 2.6, 2.7.
pip installere pytest-incremental`
python setup.py installere
lokal installation
Du kan også bare snuppe plugin-modulet filen og sætte i dit projekt vej. Derefter aktivere det (tjek pytest docs).
Anvendelse:
Bare passere parameter --incremental, når du ringer fra kommandolinjen:
py.test --incremental
Du kan også aktivere det som standard at tilføje følgende linie til din pytest.ini:
[Pytest]
addopts = --incremental
sete pakker
Som standard alle moduler indsamlet af pytest vil brugt som afhængigheder hvis importeret. For at begrænse eller udvide de overvågede mapper, du skal bruge parameteren --watch-pkg
Krav :
- Python
Begrænsninger :
- fra pakken import * moduler importeret fra __all__ i en pakke tælles ikke som en afhængighed
- moduler importerede ikke bruger import redegørelse
- moduler ikke explictitly importeret, men bruges på runtime (dvs. conftest.py, når du kører din test med pytest)
- abe-patching. (Dvs. import A X. B abe-patches X. I dette tilfælde A kan afhænge af B)
Kommentarer ikke fundet