c't 9/2020
S. 124
Wissen
Unittests mit Hypothesis
Bild: Albert Hulm

Tests in Mengen!

Hypothesis testet Python-Code mit automatischen Beispielen

Das Test-Framework Hypothesis erzeugt automatisch hunderte von Beispielen für Integrations- und Unittests. Das spart Entwicklern duplizierten Code und hilft Fehler zu finden. Die Automatik funktioniert besonders effektiv, wenn die Tests dabei im Kreis rechnen.

Von Pina Merkert

Wer Unittests schreibt, muss kreativ sein: Jeder Test muss nämlich ein Beispiel mit möglichen Eingaben und der dazu passenden Ausgabe der getesteten Funktion definieren. Wie einfach das mit Pythons unittest geht, haben wir im Artikel „Programmierte Prüfer“ [1] beschrieben. Normalerweise erfinden die Tester diese Beispiele und kodieren sie in Handarbeit in die Tests.

Dabei ist es eine Kunst, die richtigen Beispiele zu finden, die alle Randfälle und Ausnahmen abdecken. Mutation-­Tests [2] helfen zwar, ungenügende Tests zu identifizieren, der Fix besteht aber ­zumeist aus weiteren Tests mit mehr Beispielen, was den Test-Code schnell wachsen lässt.

Alle heise-Magazine mit heise+ lesen

3,99 € / Woche

Ein Abo, alle Magazine: c't, iX, Mac & i, Make & c't Fotografie

  • Alle heise-Magazine im Browser und als PDF
  • Alle exklusiven heise+ Artikel frei zugänglich
  • heise online mit weniger Werbung lesen
  • Vorteilspreis für Magazin-Abonnenten
Jetzt unbegrenzt weiterlesen Vierwöchentliche Abrechnung.

Alle Ausgaben freischalten

2,95 € 0,25 € / Woche

Nach Testphase 2,95 € wtl.

  • Zugriff auf alle c't-Magazine
  • PDF-Ausgaben zum Herunterladen
  • Zugriff in der c't-App für unterwegs
Jetzt testen Nach Testphase jederzeit monatlich kündbar.

Ausgabe einmalig freischalten

5,20 € / Ausgabe

Diese Ausgabe lesen – ohne Abobindung

  • Sicher einkaufen im heise shop
  • Magazin direkt im Browser lesen
  • Dauerhaft als PDF behalten

Kommentare lesen (1 Beitrag)