Einführung ins automatische Testen mit Python

Unit-Tests erledigen Software-Tests automatisch und helfen, Zeit zu sparen. Der zusätzliche Programmieraufwand lohnt sich schon nach wenigen Releases.

Lesezeit: 7 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 4 Beiträge

(Bild: Albert Hulm)

Von
  • Pina Merkert
Inhaltsverzeichnis

Programmierer versuchen, ihren Code so gut es geht zu verstehen, damit der in allen Fällen ohne Fehler genau das tut, was die Auftraggeber wünschen. Die Prüfung nach der Auslieferung frisst eine Menge Zeit. Meist wollen die Prüfer auch noch Zeit sparen und übersehen dann Fehler.

Die Infamie manueller Tests offenbaren die weiteren Releases: Falls der Test zeigt, dass der Programmierer etwas ändern muss, wiederholt sich der gesamte Zyklus. Am Ende der zweiten Iteration testen die Prüfer dann dieselben Features noch mal, was mit zunehmender Zahl an Iterationen zu einer ziemlich stupiden Arbeit verkommt. Und immer, wenn ein Mensch am Rechner stupide Arbeiten verrichtet, keimt die Idee, ob man diese denn nicht automatisieren könnte.

Genau dazu dienen automatische Tests. Das sind kleine Programme, die anderen Programmen auf die Finger schauen und prüfen, ob deren Ausgaben den Erwartungen entsprechen. Wir haben diverse Tests für unseren Flask-Microservice geschrieben und nutzen den dort vorgestellten Markdown-Konverter als Beispiel, wie automatische Tests einer Python-Anwendung aussehen. Den Code finden Sie im Git-Repository.

Immer mehr Wissen. Das digitale Abo für IT und Technik.

  • Zugriff auf alle Inhalte von heise+
  • exklusive Tests, Ratgeber & Hintergründe: unabhängig, kritisch fundiert
  • c't, iX, Technology Review, Mac & i, Make, c't Fotografie direkt im Browser lesen
  • einmal anmelden – auf allen Geräten lesen - monatlich kündbar
  • erster Monat gratis, danach monatlich 9,95 €
  • Wöchentlicher Newsletter mit persönlichen Leseempfehlungen des Chefredakteurs
GRATIS-Monat beginnen Jetzt GRATIS-Monat beginnen Mehr Informationen zu heise+