Python ... Klassen testen?

8

Wie schreiben wir in python Testfälle für unsere Klassen? Zum Beispiel:

%Vor%

Ich weiß, dass es etwas namens Unit Testing gibt. Aber ich bin mir nicht sicher, wie es überhaupt funktioniert. Konnte keine gute Erklärung finden, die ich online verstand.

    
VPNTIME 10.05.2012, 00:15
quelle

2 Antworten

7

doctest ist am einfachsten. Tests werden im Docstring geschrieben und sehen wie REPL-Episoden aus.

%Vor%     
Ignacio Vazquez-Abrams 10.05.2012, 00:22
quelle
2

Im Abschnitt "Testen Ihres Codes" im Hitchhiker-Handbuch zu Python werden allgemeine Tests erläutert Praktiken / Methoden in Python, sowie die Einführung spezifischer Tools in mehr oder weniger komplexer Reihenfolge. Wie bereits erwähnt, Doctest ist eine sehr einfache Art und Weise zu starten ... und von dort aus möchten Sie möglicherweise zu unittest () und darüber hinaus bewegen.

Nach meiner Erfahrung kann und soll doctest als schneller und dreckiger Test dienen, aber hüten Sie sich davor, über Bord zu gehen - es kann zu langen und hässlichen Docstrings führen, die die Benutzer Ihres Moduls vielleicht nicht sehen wollen besonders, wenn Sie in Ihren Tests erschöpfend sind und alle Arten von Eckfällen einschließen. Die Portierung dieser Tests in ein dediziertes Testframework wie unittest () ist auf lange Sicht eine bessere Praxis. Sie können nur die Grundlagen in Ihrem Doctest lassen, so dass jeder, der den Docstring betrachtet, eine schnelle Vorstellung davon bekommt, wie das Modul in der Praxis funktioniert.

    
Jeff Wright 23.01.2015 13:33
quelle

Tags und Links