In che modo è possibile disattivare temporaneamente i singoli test dell'unità quando si utilizza il modulo unittest
in Python?Disabilitare temporaneamente i singoli test delle unità Python
risposta
Singoli metodi di prova o classi possono essere disabilitati utilizzando il decoratore unittest.skip
.
@unittest.skip("reason for skipping")
def test_foo():
print('This is foo test case.')
@unittest.skip # no reason needed
def test_bar():
print('This is bar test case.')
Per altre opzioni, consultare i documenti per Skipping tests and expected failures.
The latest version (2.7 - unreleased) supports test skipping/disabling like so. Potresti semplicemente prendere questo modulo e usarlo nella tua installazione Python esistente. Probabilmente funzionerà.
Prima di questo, ero solito rinominare i test che volevo passare a xtest_testname
da test_testname
.
Ecco uno script elisp rapido per eseguire questa operazione. Il mio elis è un po 'arrugginito quindi mi scuso in anticipo per eventuali problemi che ha. Non testato.
(defun disable_enable_test()
(interactive "")
(save-excursion
(beginning-of-line)
(search-forward "def")
(forward-char)
(if (looking-at "disable_")
(zap-to-char 1 ?_)
(insert "disable_"))))
+1, ma nell'intero progetto che sto lavorando tutti stanno usando python v2.6.2, e non credo che cambierà: /, ma è una soluzione, grazie – coelhudo
Rinominare per ora. grazie – coelhudo
Potresti modificare un po 'il tuo editor per darti una macro per abilitare/disabilitare un testcase ma parlo come utente di Emacs quindi ... :) –
È possibile utilizzare decoratori per disabilitare il test che può avvolgere la funzione e prevenire la googletest o pitone unit test per eseguire il TestCase.
def disabled(f):
def _decorator():
print f.__name__ + ' has been disabled'
return _decorator
@disabled
def testFoo():
'''Foo test case'''
print 'this is foo test case'
testFoo()
uscita:
testFoo has been disabled
Ho appena rinominare un metodo di test case con una sottolineatura: test_myfunc diventa _test_myfunc.
È sufficiente posizionare il decoratore @unittest.SkipTest
sopra il test.
Non so chi sia stato. Ma stavo leggendo la documentazione e dice che SkipTest è un'eccezione. In ogni caso, è diverso da unittest.skip nel senso che skip non esegue mai il test (disabilitandolo), mentre lo scopo SkipTest deve essere generato se qualcosa non è previsto mentre il test è in esecuzione. Ho ragione? Interessante duro. – coelhudo
'unittest.skip' (senza motivo) mi dà errore in Python 2 ma non in Python 3. – Akif
- 1. È possibile disabilitare temporaneamente l'interpolazione delle stringhe di Python?
- 2. Disabilitare la registrazione winston durante l'esecuzione dei test delle unità?
- 3. Global.asax per i test delle unità?
- 4. SpecFlow/BDD per i test delle unità?
- 5. automake: esegue automaticamente i test delle unità
- 6. Copertura test unità Python
- 7. python & maven (integrazione test unità)
- 8. Disabilita i generatori di test delle unità in Rails
- 9. Django segnali disabilitare temporaneamente
- 10. Test delle unità in PHP?
- 11. iPhone - Recupero delle risorse per i test delle unità logiche
- 12. Utilizzo delle informazioni sulle applicazioni con i test delle unità?
- 13. Disabilitare temporaneamente risorse js/css
- 14. I contratti di codice aiutano davvero i test delle unità?
- 15. Test delle unità di scrittura in Python: come si avvia?
- 16. Test delle unità Python: make nose show asserzioni valori
- 17. Test delle unità Android delle categorie
- 18. Test delle unità per le eccezioni nel costruttore Python
- 19. Come disabilitare temporaneamente la protezione XSS nei browser moderni per i test?
- 20. Unità test decoratori in Python
- 21. Algoritmi di approssimazione del test delle unità
- 22. File di dati esterni per i test delle unità
- 23. Utilizzo di StructureMap con i test delle unità
- 24. Disabilita il timeout per i test delle unità in C#
- 25. Come eseguire i test delle unità qtestlib da QtCreator
- 26. Server HTTP per i test delle unità in Delphi
- 27. Best practice per i test delle unità Android?
- 28. Manipolazione del file app.config per i test delle unità
- 29. Impossibile eseguire i test delle unità WP81 con VSTest.Console.exe
- 30. Come velocizzare i test delle unità di Spark SQL?
In Python 3, la risposta di Akif sotto '@ unittest.SkipTest' funziona e non' @ unittest.skip' – lifebalance
Sto usando Python 3.6.1 e '@ unittest.skip' funziona anche bene. – Pete
@Pete, in Python 3.4.0, '@ unittest.skip' non funziona. – lifebalance