|
|
|
La libreria di riferimento di Python |
|
|
|
5.3.7 Oggetti TestResult
Un oggetto TestResult immagazzina i risultati di una serie di
test. Le classi TestCase e TestSuite assicurano che i
risultati siano immagazzinati propriamente; gli autori dei test non
devono preoccuparsi di registrazione la conclusione del test.
Gli ambienti di test costruiti su unittest possono voler
accedere all'oggetto TestResult generato eseguendo una serie di test per fini
reportistici; a questo scopo il metodo TestRunner.run() restituisce
un'istanza di TestResult.
Ogni istanza contiene il numero totale di test eseguiti e la
raccolta di fallimenti ed erorri occorsi in questi test. La
raccolta contiene tuple di (testcase, traceback)
,
dove traceback è una stringa contenente una versione formattata
del traceback di quella eccezione.
L'istanza TestResult possiede i seguenti attributi che saranno di
interesse ispezionando i risultati dell'esecuzione di una
serie di test:
- errors
-
Una lista contenente coppie di istanze TestCase e il
traceback formattato dei test che sollevano un'eccezione, ma non
segnalano il fallimento del test.
Modificato nella versione 2.2:
Contiene traceback formattate anziché il risultato di
sys.exc_info().
- failures
-
Una lista contenente coppie di istanze TestCase e il
traceback formattato dei test che segnalano un fallimento del
codice di test.
Modificato nella versione 2.2:
Contiene traceback formattate anziché il risultato di
sys.exc_info().
- testsRun
-
Il numero di test che sono stati avviati.
-
Restituisce vero se tutti i test eseguiti sino ad ora hanno avuto
successo, altrimenti restituisce falso.
I seguenti metodi della classe TestResult vengono utilizzati
per contenere le strutture dati interne e possono essere estesi in
sotto classi per supportare ulteriori richieste di reportistica.
Ciò torna particolarmente utile nella costruzione di tool che necessitino una
reportistina interattiva durante l'esecuzione dei test.
-
Chiamato quando il test case test sta essere lanciato.
-
Chiamato quando il test case test è stato eseguito, senza
considerare il risultato.
-
Chiamato quando il test case test solleva un'eccezione
senza segnalare il fallimento del test. err è una tupla nella
forma restituita da sys.exc_info():
(type, value, traceback)
.
-
Chiamato quando il test case test segnala un
fallimento. err è una tupla nella forma restituita da
sys.exc_info():
(type, value, traceback)
.
-
Questo metodo viene chiamato per un test che non fallisce;
test è l'oggetto test case.
É disponibile un metodo aggiuntivo per gli oggetti TestResult:
-
Questo metodo può essere invocato per segnalare che l'insieme dei
test in corso dovrebbe essere interrotto. Una volta chiamato, l'oggetto
TestRunner ritorna al chiamante senza eseguire nessun
ulteriore test. Questo metodo viene utilizzato dalla classe
TextTestRunner per interrompere l'ambiente di test quando
l'utente segnala un'interruzione dalla tastiera. I tool interattivi
che forniscono degli attivatori possono utilizzarlo in maniera simile.
|
|
|
La libreria di riferimento di Python |
|
|
|
Release 2.3.4, documentation updated on 21. maggio 2005.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.