DTest

Software screenshot:
DTest
Dettagli del software:
Versione: 0.5.0
Data di caricamento: 11 May 15
Sviluppatore: Kevin L. Mitchell
Licenza: Libero
Popolarità: 8

Rating: nan/5 (Total Votes: 0)

dtest è un framework di test, simile al pacchetto unittest standard fornito da Python. Il valore aggiunto per dtest, tuttavia, è che l'esecuzione di test è filettato, attraverso l'uso del pacchetto eventlet. Il pacchetto dtest fornisce anche il concetto di "dipendenze" tra i test e le attrezzature di prova - così la "D" in "dtest" - che assicura che i test non vengono eseguiti fino a quando l'abbinamento istituito attrezzature di prova hanno completato, e che la abbattere attrezzature di prova non vengono eseguiti fino a quando tutte le prove associate hanno completato. Dipendenze possono essere utilizzati anche per garantire che le prove che richiedono la disponibilità di alcune funzionalità non vengono eseguite se le prove di funzionalità specifiche che sicuro.
Test Writing
I programmi di test più semplici sono semplici funzioni con nomi che iniziano con "test", situato nei file sorgenti Python cui nomi anche cominciare con "test". Non è neppure necessario importare qualsiasi parte del quadro dtest. Se i test sono raccolti in classi, però, o se si desidera utilizzare le funzioni più avanzate di dtest, semplice da dtest import * è necessario. Ciò mette a disposizione la classe DTestCase - che dovrebbe essere esteso da tutte le classi contenenti i test - così come tali decoratori comeskip enottest.
Le prove possono essere effettuate utilizzando l'istruzione di Python assert norma; tuttavia, un certo numero di routine di utilità sono disponibili nel modulo dtest.util (anche sicuro per import *). Molte di queste routine di utilità hanno nomi simili ai metodi di unittest.TestCase - ad esempio, dtest.util.assert_dict_equal () è analogo a unittest.TestCase.assertDictEqual ().
Calendario test
Il framework supporta dtest attrezzature di prova - istituire e abbattere le funzioni - a livello di classe, il modulo, e il pacchetto. Apparecchi a livello di pacchetto consistono in funzioni denominate setup () e tearDown () contenuti in file "__init__.py"; allo stesso modo, infissi a livello di modulo consistono in funzioni di configurazione samed () e tearDown () all'interno di moduli contenenti funzioni di test e classi di metodi di prova. A livello di classe, le classi possono contenere setUpClass () e tearDownClass () metodi della classe (o metodi statici), che può svolgere istituire e abbattere per ogni classe. In tutti i casi, le funzioni di setup () e il metodo setUpClass () vengono eseguite prima di qualsiasi dei test all'interno dello stesso campo di applicazione; allo stesso modo, dopo tutte le prove in un dato ambito hanno eseguito, i tearDownClass corrispondenti () e teardown funzioni () vengono eseguite.
Il quadro dtest supporta anche setUp per-test () e tearDown () funzioni o metodi, che sono gestiti prima e dopo ogni test associato. Per le classi contenenti i test, ogni test ha automaticamente il setup () e tearDown () metodi della classe ad essi associati; tuttavia, per tutte le prove, questi apparecchi possono essere esplicitamente impostate (o sostituite da quella di default della classe). Si consideri il seguente esempio:
istest
def test_something ():
& Nbsp; # Prova qualcosa qui
& Nbsp; passaggio
@ Test_something.setUp
def something_setup ():
& Nbsp; # ottenere tutto istituito pronto ad andare ...
& Nbsp; passaggio
@ Test_something.tearDown
def something_teardown ():
& Nbsp; # pulire dopo noi stessi
& Nbsp; passaggio
In questo esempio, un decoratore dtest (diversonottest) è necessario che precede test_something (); qui abbiamo usatoistest, ma qualsiasi altro disponibile dtest decoratore potevamo essere usato qui. Questo rende il @ test_something.setUp e decoratori @ test_something.tearDown disponibili. (Per qualcosa di analogo nello standard di Python, controlla il built-in decoratorproperty.)
Test in corso
Esecuzione di test che utilizzano il framework dtest è abbastanza diretto. Uno script chiamato run-dtests è disponibile. Per impostazione predefinita, la directory corrente viene analizzato per tutti i moduli o pacchetti i cui nomi iniziano con "test"; la ricerca ricorsivamente anche verso il basso attraverso tutti i pacchetti. ("Package" A è definito come una directory contenente "__init__.py".) Una volta che tutti i test vengono scoperti, vengono poi eseguite, ei risultati delle prove emesso standard output.
Sono disponibili per il controllo del comportamento di run-dtests diverse opzioni della riga di comando. Per esempio, il "--no-saltare" l'opzione causerà-dtests Esegui per eseguire tutti i test, anche quelli decorati con il decoratoreskip, e l'opzione "-d" causa-dtests correre per cercare una directory specifica, piuttosto che la directory corrente. Per un elenco completo delle opzioni, usare l'opzione "-h" o "--help".
Esecuzione-dtests eseguito da riga di comando non è l'unico modo per eseguire i test, però. Lo script run-dtests è uno script molto semplice che analizza le opzioni della riga di comando (utilizzando il OptionParser costruito dalla funzione dtest.optparser ()), converte queste opzioni in un insieme di argomenti chiave (usando dtest.opts_to_args ()), quindi passa questi argomenti chiave alla funzione dtest.main (). Gli utenti possono utilizzare queste funzioni per costruire la stessa funzionalità con le estensioni specifiche per l'utente, come la fornitura di un'istanza alternativa DTestOutput per controllare come vengono visualizzati i risultati dei test, o di fornire un metodo alternativo per controllare che i test vengono saltati. . Vedere le stringhe di documentazione per queste funzioni e classi per ulteriori informazioni

Requisiti

  • Python

Programmi simili

Commenti a DTest

I commenti non trovato
Aggiungi commento
Accendere le immagini!