pytest-incrementale è un test runner incrementale (plug pytest).
Che cosa è un "test runner incrementale"?
Quando si parla di costruire utensili è comune riferimento ai termini:
- Iniziale (completo) Anno di costruzione - tutti i file vengono compilati
- Generazione incrementale (o ricostruzione parziale) - solo i file modificati vengono compilati
- No-op costruzione - nessun file vengono compilati (nessuno è cambiato dall'ultima esecuzione)
Quindi, un "test corridore incrementale" solo rieseguire i test che sono stati colpiti dai cambiamenti del codice sorgente da esecuzione ultima prova.
Come funziona?
pytest incrementale è un plugin pytest. Quindi, se è possibile eseguire il test suite con pytest è possibile utilizzare pytest-incrementale.
Il plugin analizzerà i file di origine di pitone e attraverso le sue importazioni di definire le dipendenze dei moduli. doit è utilizzato per tenere traccia delle dipendenze e salvare i risultati. Il plugin modificherà come pytest raccogliere le vostre prove. pytest fare il resto del lavoro di effettivamente in esecuzione dei test e la notifica dei risultati.
Installare:
pytest-incrementale è testato su Python 2.6, 2.7.
Pip installare pytest-incremental`
python setup.py install
installazione locale
È anche possibile prelevare il file del modulo plug-in e mettere nel vostro percorso del progetto. Poi abilitarla (verificare documenti pytest).
Utilizzo:
Basta passare il parametro --incremental quando si chiama da linea di comando:
py.test --incremental
È anche possibile abilitare di default aggiungendo la seguente riga al vostro pytest.ini:
[Pytest]
addopts = incremental
Pacchetti guardato
Per impostazione predefinita, tutti i moduli raccolti da pytest saranno utilizzati come dipendenze se importati. Al fine di limitare o estendere le cartelle controllate è necessario utilizzare il parametro --watch-pkg
Requisiti
- Python
Limitazioni
- dai moduli * pacchetto di importazione importate da __all__ in un pacchetto non sono conteggiati come una dipendenza
- moduli importati non si utilizza l'istruzione import
- moduli non explictitly importati, ma utilizzati in fase di esecuzione (ad esempio conftest.py durante l'esecuzione i test con pytest)
- scimmia-patching. (Vale a dire le importazioni A X. B scimmia-patch X. In questo caso A potrebbe dipendere B)
I commenti non trovato