5.3.4 Classi e funzioni

class TestCase( )
Le istanze della classe TestCase rappresentano le più piccole unità testabili in un insieme di test. Questa classe è pensata per essere usata come classe di base, con specifici test implementati da sotto classi reali. Questa classe implementa l'interfaccia necessaria al test runner per permettergli di guidare il test, con metodi che il codice di test può utilizzare per controllo e per riportare vari tipi di fallimenti.

class FunctionTestCase( testFunc[, setUp[, tearDown[, description]]])
Questa classe implementa la porzione dell'interfaccia TestCase che permette al test runner di guidare il test, ma non fornisce i metodi che il codice approntato può utilizzare per controllarlo e riportare errori. La classe viene usata per creare dei test case usando codice di test ereditato, permettendogli di integrarsi in un framewrok di test basato su unittest.

class TestSuite( [tests])
Questa classe rapprenta un'aggregazione di singoli test case e test suite. La classe presenta l'interfaccia necessaria al test runner per consentirgli di funzionare come ogni altro test case, ma eseguendo tutti i test tutte le test suite contenute. Vengono forniti ulteriori metodi per aggiungere test case e test suite all'aggregazione. Se viene passato tests, allora esso dev'essere una sequenza di test individuali che andranno aggiunti alla suite.

class TestLoader( )
Questa classe è responsabile del caricamento dei test in accordo a diversi criteri e li riporta in un involucro costituito da una TestSuite. Può caricare tutti i test all'interno di un dato modulo o di una classe TestCase. Quando viene caricata da un modulo, essa considera tutte le classi derivate da TestCase. Per ognuna di queste classi, essa crea un'istanza per ogni metodo il cui nome inizia con la stringa "test".

defaultTestLoader
Istanza della classe TestLoader che può essere condivisa. Se non sono necessarie personalizzazioni di TestLoader, questa istanza può essere sempre utilizzata invece che crearne di nuove.

class TextTestRunner( [stream[, descriptions[, verbosity]]])
Un'implementazione di base del test runner che stampa i risultati sullo standard output. Possiede pochi parametri configurabili, ma essenzialmente è molto semplice. Le applicazioni grafiche che eseguono le test suite devono fornire implementazioni alternative.

main( [module[, defaultTest[, argv[, testRunner[, testRunner]]]]])
Un programma a riga di comando che esegue un insieme di test; è previsto principalmente per la creazione di moduli di test facilmente eseguibili. L'uso più semplice di questa funzione è:

if __name__ == '__main__':
    unittest.main()

In alcuni casi, i test esistenti possono essere stati scritti utilizzando il modulo doctest. Se è questo il caso, quel modulo fornisce una classe DocTestSuite che può costruire automaticamente istanze unittest.TestSuite dal codice esistente da testare. Nuovo nella versione 2.3.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.