[Python-de] Frage zu Testabdeckung und Verantwortlichkeiten der jeweiligen Testklasse

Arnold Krille arnold at arnoldarts.de
Fr Dez 20 08:47:29 CET 2013


Am Fri, 20 Dec 2013 08:08:35 +0100
schrieb Reimar Bauer <rb.proj at gmail.com>:

> Moin
> 
> 2013/12/20 Thomas Lehmann <thomas.lehmann.private at gmail.com>:
> > Hallo,
> >
> > offensichtlich ist es ja so, dass beim Ausführen der Unittests
> > nicht geschaut wird wer die Methoden verwendet bzw. tested.
> >
> > Nehmen wir mal eine Klasse "Vector" und eine Methode "angle" und
> > in TestVector.py wurde vergessen diese Methode zu testen;
> > allerdings wurde später die Methode "angle" in einem Algorithmus
> > verwendet der vollständig getested wurde.
> >
> > Fazit: Die Testabdeckung ist 100% obwohl der eigentlich dafür
> > verantwortliche Test es nicht behandelt.
> >
> > Ich hätte mir durch einen geeigneten Mechanism gewünscht das ich
> > gewarnt werde das TestVector.py nicht alle Vector.py Methoden
> > behandelt.
> >
> > Gibt es sowas?
> 
> coverage
> 
> macht ne Analyse welcher Code nicht durch Tests abgedeckt ist.

Aber coverage stellt dann auch nur fest, das die Funktion angle
verwendet wurde und der Code durchlaufen ist.

Eine Möglichkeit wäre, die unittests mit coverage auszuführen, den
Report speichern, dann die weiteren Tests (Integrationtests,
Functionaltests, etc) jeweils wieder einzeln ausführen und die Reports
speichern.

Und ansonsten bleibt die Erkenntnis, das coverage nicht alles ist...

- Arnold
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 230 bytes
Beschreibung: nicht verfügbar
URL         : <http://mail.python.org/pipermail/python-de/attachments/20131220/cafa227a/attachment.sig>


Mehr Informationen über die Mailingliste python-de