Zum Inhalt springen

Regressionstest

Männliche Person, frontal, schaut in die Kamera; trägt kariertes Hemd über dunkelfarbigem T‑Shirt; heller Innenraum mit unscharfem Monitor oder Poster links und Fenster rechts.

von Richard Albrecht am 03.11.2026

Ein Regressionstest ist ein Test, der sicherstellt, dass ein behobener Fehler nicht zurückkommt. Er entsteht aus dem Fehler selbst: Erst wird er so geschrieben, dass er den Fehler zeigt, dann wird der Code repariert.

Regressionstest

Ein Test, der sicherstellt, dass ein behobener Fehler nicht zurückkommt.
Beispiel: „Der Regressionstest zum Rundungsfehler läuft seit zwei Jahren bei jedem Push mit.“

Regression meint hier den Rückschritt: eine Stelle, die funktionierte und nach einer Änderung wieder bricht. Als Regressionstest zählt jeder Test, der genau das verhindert.

Abgrenzung zum Unit Testing: Das ist die Bauart des Tests. Regressionstest beschreibt den Anlass, aus dem er entstanden ist.

Wie ein Regressionstest entsteht

In drei Schritten, und der erste ist der wichtigste: einen Test schreiben, der den gemeldeten Fehler nachstellt und deshalb fehlschlägt. Dann den Code ändern, bis er durchläuft. Dann beides gemeinsam ausliefern.

Der Vorteil dieser Reihenfolge: Der Test beweist, dass der Fehler verstanden wurde. Ein Test, der nach der Reparatur geschrieben wird, prüft oft etwas anderes als die Ursache.

Warum ein Regressionstest zum Hotfix gehört

Weil eine eilige Korrektur am Hauptweg vorbeiläuft und damit auch an der üblichen Prüfung. Ohne Test ist die Änderung beim nächsten Umbau wieder weg, und der Fehler kommt mit ihr zurück.

Deshalb hat der Hotfix zwei Teile: die Zeile, die repariert, und den Test, der sie hält, siehe Hotfix.

Was eine Regression im Betrieb kostet

Mehr als der ursprüngliche Fehler. Wer denselben Fehler zum zweiten Mal melden muss, verliert das Vertrauen in die Arbeit, und die Erklärung dafür ist schwieriger als die beim ersten Mal.

Daraus folgt eine einfache Regel für die Fehlerliste: Jeder Eintrag, der zweimal vorkam, wird mit einem Test geschlossen und nicht mit einer Korrektur allein.

Siehe auch:

Unit Testing

Das Prüfen einzelner Funktionen für sich, ohne Datenbank und ohne Netz.

#Deployment & Versionierung

Integrationstest

Ein Test, der mehrere Teile im Zusammenspiel prüft, meist samt Datenbank.

#Deployment & Versionierung

Hotfix

Eine Korrektur, die an der üblichen Reihenfolge vorbei ausgeliefert wird.

#Deployment & Versionierung

Automatisierter Test in der Pipeline

Ein Test, der bei jeder Änderung selbsttätig läuft und das Ausrollen anhalten kann.

#Deployment & Versionierung

Testabdeckung (Code Coverage)

Der Anteil des Codes, der bei einem Testlauf tatsächlich ausgeführt wird.

#Deployment & Versionierung

Continuous Integration (CI)

Die Praxis, Änderungen mehrmals täglich zusammenzuführen und dabei prüfen zu lassen.

#Deployment & Versionierung