Doctest è un metodo di test semplice ma utile per i programmi Python. Rispetto allo unit test , doctest non richiede uno script indipendente per scrivere casi di test. I casi di test possono essere scritti semplicemente nelle informazioni del documento (contenuti tra virgolette triple / doppie) di una funzione Python. Quindi questi casi possono testare la funzione utilizzando il doctestmodulo.
Il doctestmodulo cerca parti di testo che assomigliano a sessioni interattive di Python, quindi esegue quelle sessioni per verificare che funzionino esattamente come mostrato. ( documento python )
Usiamo doctest per una abs()funzione sbagliata :
Il risultato è il seguente:
Come mostrato nell'esempio sopra, il doctest è davvero un modo comodo e semplice per testare la funzione.
In poche parole, ci sono solo 3 passaggi:
doctestmodulo di importazionedoctest.testmod()per eseguire doctestSe tutti i casi di test vengono superati, non doctestverrà stampato nulla.
In doctest.testmod, c'è un parametro importante chiamato verbose.
È impostato su Falseper impostazione predefinita, il che significa che durante l'esecuzione del test, solo i casi non riusciti produrranno informazioni dettagliate. Se desideri ottenere informazioni complete su ogni caso, impostalo su True.
if __name__ == '__main__':
doctest.testmod(verbose=True)
In realtà, non dobbiamo scrivere il if __name__ == '__main__':blocco. Possiamo eseguire doctest direttamente nel terminale:
$ python -m doctest wrong_abs.py
$ python -m doctest -v wrong_abs.py
A volte, potrebbe essere un po 'complicato se mettiamo sia commenti che casi di test sotto la funzione. Nessun problema, possiamo mettere tutti i casi di test in un file indipendente ed eseguire comunque doctest perfettamente.
Ad esempio, creiamo un file chiamato test_cases.txte inseriamo i casi di test "stile doctest":
Quindi esegui il doctest con questo comando:
python -m doctest test_cases.txt
Doctest è un metodo di test facile da usare per i programmi Python. Usare bene questa tecnica può aiutarti a ottenere un codice privo di bug.
Grazie per aver letto.
Post correlati:
Sei tecniche di debug per programmatori PythonAltri tutorial su Python:
The Ultimate Python Tutorial (continua ad aggiornare)
Quando fai una richiesta a facebook.com, il tuo computer cerca il nome di dominio per tradurre quel nome di dominio in un indirizzo IP in modo che il tuo computer possa effettuare quella connessione.
Devi aver sentito parlare di tutti i nuovi potenti plug-in ChatGPT come Browser, Code Interpreter ecc. Ma c'è un problema, l'accesso ai plug-in è limitato a una lista di attesa e quindi molti non hanno accesso ad essa.
"Ehi Siri, suona Me Dive di Olivia Dean." Era maggio 2021 quando ho iniziato il mio tirocinio presso la Future Academy Africa ad Akure, in Nigeria.
Qualsiasi mente razionale sa che i circoli politici e mediatici sono dominati dalla sinistra, anche dall'estrema sinistra, uno stato di cose che crea uno squilibrio nel discorso politico. Nel campo della religione, questo squilibrio è chiaramente visibile: giornali e reti di sinistra non si affrettano a difendere la fede cristiana.
Introduzione:Benvenuti, coraggiosi lettori, in un viaggio che ci porterà nelle profondità più oscure del nostro pianeta. In questo blog, ci addentriamo nel mondo enigmatico della Fossa delle Marianne, scoprendo i suoi segreti nascosti e scoprendo le verità agghiaccianti che giacciono sotto la sua superficie.
Quante volte vi è capitato di buttare via una bottiglia di plastica, un barattolo di vetro, una lattina di alluminio o una confezione di energia green senza pensarci due volte? Quante volte hai desiderato di poter ottenere qualcosa in cambio del loro riciclaggio? Se sei come la maggior parte delle persone, la risposta è probabilmente molte volte. Il riciclaggio è spesso visto come una seccatura, un lavoro di routine o un dovere che non porta alcun beneficio immediato o tangibile.