WMP Sites

Unit Test: What to Test – So triffst du die richtigen Tests ohne Zeit zu verschwenden

Lukas Fuchs vor 1 Monat Backend 3 Min. Lesezeit

Die meisten Teams schreiben entweder zu wenige Tests oder testen alles doppelt. Ich zeige dir, worauf ich bei Unit Tests wirklich achte, damit du schneller baust und weniger Fehler durchrutschen.

Unit Test: What to Test

Wenn ich über unit test what to test spreche, meine ich nicht: „Wie schreibe ich Tests?“ Ich meine: Was lohnt sich überhaupt zu testen? Denn genau da verlieren die meisten Zeit. Sie testen Dinge, die keinen Wert bringen, und lassen die kritischen Stellen offen.

Mein Ziel ist einfach: Mehr Sicherheit mit weniger Tests. Nicht mehr Code. Nicht mehr Wartung. Mehr Wirkung.

Unit Test: What to Test zuerst

Ich teste zuerst den Code, der teuer ist, wenn er kaputtgeht. Das sind die Stellen mit Logik, Regeln und Entscheidungen. Nicht das Framework. Nicht die Bibliothek. Nicht die Standardfunktion von irgendwas, das schon tausendfach getestet wurde.

Wenn ich nur wenig Zeit habe, gehe ich nach dieser Reihenfolge vor:

  • Geschäftslogik mit klaren Regeln
  • Edge Cases, die leicht übersehen werden
  • Fehlerfälle, die echte Schäden verursachen
  • Berechnungen, Validierungen und Bedingungen
  • Code mit hoher Änderungsrate

Das ist der Kern von unit test what to test: Teste das, was kaputtgehen kann und was dir wirklich wehtut, wenn es kaputtgeht.

Unit Test: What to Test nicht

Ich teste nicht alles. Das wäre Zeitverschwendung. Und schlecht geschriebene Tests machen den Code oft schlimmer, nicht besser.

Ich lasse diese Dinge meistens aus:

  • Third-Party-Code, den ich nicht kontrolliere
  • Einfachen Getter/Setter ohne Logik
  • Standard-Framework-Verhalten
  • UI-Details, wenn sie besser mit Integrationstests abgedeckt sind
  • Alles, was nur die Implementierung kopiert statt das Verhalten zu prüfen

Wenn ein Test nur beweist, dass mein Code exakt das macht, was ich gerade reingeschrieben habe, dann bringt er fast nichts. Ich will Verhalten absichern, nicht die Existenz des Codes.

Unit Test: What to Test bei Geschäftslogik

Hier liegt der höchste Hebel. Geschäftslogik ist der Teil, der Geld, Zeit oder Vertrauen beeinflusst. Wenn da ein Fehler passiert, zahlen echte Menschen den Preis.

Ich teste diese Fragen:

  • Was passiert bei gültigen Eingaben?
  • Was passiert bei ungültigen Eingaben?
  • Was passiert an der Grenze?
  • Was passiert bei Sonderfällen?

Beispiel: Ein Rabatt gilt nur ab 100 Euro Warenwert. Dann teste ich nicht nur den normalen Fall. Ich teste auch 99,99 Euro, 100 Euro und 100,01 Euro. Genau da passieren Fehler.

Wenn du darüber mehr über Testprinzipien lesen willst, ist die offizielle Doku von JUnit ein guter Startpunkt. Für allgemeine Testing-Best Practices ist auch Martin Fowler eine starke Ressource.

Unit Test: What to Test bei Edge Cases

Edge Cases sind keine Theorie. Sie sind der Ort, an dem Produktionsfehler geboren werden. Ich suche gezielt nach den Fällen, an die man beim Schreiben nicht zuerst denkt.

Ich prüfe besonders:

  • Null- oder leere Werte
  • Sehr große oder sehr kleine Werte
  • Unerwartete Reihenfolgen
  • Duplikate
  • Zeitzonen, Rundung und Präzision

Wenn dein Code mit Daten arbeitet, sind diese Fälle oft der Unterschied zwischen stabil und kaputt. Ich will nicht raten. Ich will wissen.

Unit Test: What to Test bei Fehlern

Viele Teams testen nur den Happy Path. Das ist bequem. Und gefährlich.

Ich teste Fehler bewusst, weil gute Software nicht nur im Idealfall funktioniert. Sie verhält sich auch sauber, wenn etwas schiefgeht.

Ich frage mich:

  • Kommt die richtige Fehlermeldung?
  • Wird ein kaputter Zustand verhindert?
  • Bricht der Prozess kontrolliert ab?
  • Bleiben Daten konsistent?

Das ist besonders wichtig bei Validierung, Zahlungslogik, Authentifizierung und Datenverarbeitung. Wenn hier etwas schiefgeht, willst du Kontrolle, nicht Chaos.

Unit Test: What to Test mit Fokus auf Verhalten

Ich teste Verhalten, nicht Implementierung. Das ist ein großer Unterschied.

Schlechte Frage: Wurde diese Methode mit genau diesen internen Schritten aufgerufen?

Gute Frage: Kommt am Ende das richtige Ergebnis raus?

Warum das wichtig ist:

  • Verhalten bleibt stabil, auch wenn ich den Code refactore
  • Tests werden weniger fragil
  • Ich kann schneller ändern, ohne alles neu zu schreiben

Wenn Tests bei jeder kleinen internen Änderung brechen, sind sie ein Problem. Nicht ein Schutz.

Unit Test: What to Test im Teamalltag

Ich nutze eine einfache Regel: Wenn ein Bug teuer wäre, teste ich ihn. Wenn eine Regel komplex ist, teste ich sie. Wenn ein Teil häufig geändert wird, teste ich ihn ebenfalls.

Für den Alltag funktioniert diese Checkliste:

  • Hat die Funktion Logik? Dann testen.
  • Gibt es Branches oder Bedingungen? Dann testen.
  • Gibt es Fehlerfolgen? Dann testen.
  • Ist der Code kritisch für Business oder Nutzer? Dann testen.
  • Ist das Verhalten schwer manuell zu prüfen? Dann testen.

Wenn du alles so priorisierst, brauchst du weniger Diskussionen und triffst bessere Entscheidungen. Genau darum geht es bei unit test what to test.

Unit Test: What to Test in 5 Minuten entscheiden

Wenn ich schnell entscheiden muss, teste ich nach diesem Schema:

  • Step 1: Was ist die wichtigste Regel?
  • Step 2: Welche Eingaben können die Regel brechen?
  • Step 3: Welche Fehler würden im echten Leben wehtun?
  • Step 4: Welche Fälle sind Grenzwerte?
  • Step 5: Was kann ich als Black Box prüfen?

Wenn ich diese fünf Schritte durchgehe, finde ich fast immer die Tests mit dem höchsten ROI. Das ist der Punkt. Nicht mehr testen. Besser testen.

Unit Test: What to Test bei hohem Wartungsdruck

Je größer ein System wird, desto mehr zählt Wartbarkeit. Schlechte Tests bremsen dich dann doppelt: Sie kosten Zeit beim Schreiben und Zeit beim Ändern.

Darum achte ich auf diese Dinge:

  • Ein Test, ein Grund – nicht zu viele Dinge in einem Test
  • Klare Namen – ich soll sofort verstehen, was geprüft wird
  • Wenig Setup – sonst wird der Test zum Monster
  • Stabile Assertions – nicht auf Details testen, die sich oft ändern

Ein guter Test erklärt sich fast selbst. Wenn ich ihn nicht schnell lesen kann, ist er zu kompliziert.

Unit Test: What to Test ist eine Prioritätsfrage

Am Ende ist alles eine Frage von Priorität. Ich habe nur begrenzte Zeit. Also investiere ich sie dort, wo das Risiko hoch und der Nutzen groß ist.

Die einfache Wahrheit ist:

  • Hohe Komplexität = testen
  • Hoher Schaden bei Fehlern = testen
  • Viele Änderungen = testen
  • Kein echter Mehrwert = nicht testen

So halte ich die Testbasis klein, stark und nützlich.

Fazit zu Unit Test: What to Test

Wenn du dich fragst, unit test what to test, dann starte nicht mit der Frage, wie viele Tests du schreiben kannst. Starte mit der Frage, welche Fehler dich wirklich treffen würden. Teste Geschäftslogik, Edge Cases, Fehlerfälle und alles, was oft geändert wird. Lass trivialen Kram weg. Genau so baust du ein Testsystem, das schützt statt zu nerven.

Weitere Beiträge

Folge uns

Neue Beiträge

Frontend

Word Überschriften nummerieren: So nummerierst du Überschriften in Word sauber und schnell

AUTOR • Aug 14, 2026
Frontend

10 Merkmale einer Kurzgeschichte: So erkennst und schreibst du sie sofort

AUTOR • Aug 14, 2026
Frontend

Abbildungsverzeichnis Word erstellen: So geht es schnell, sauber und ohne Chaos

AUTOR • Aug 14, 2026
DevOps & Deployment

Linux Download: Die ultimative Anleitung für Neulinge und Profis

AUTOR • Aug 10, 2026
DevOps & Deployment

iptables: Die Firewall ihrer Linux-Welt – einfach, sicher, effektiv

AUTOR • Aug 10, 2026
DevOps & Deployment

Linux Dateisystem: Eine tiefgreifende Erkundung für mehr Kontrolle und Verständnis

AUTOR • Aug 10, 2026
DevOps & Deployment

Linux Foundation Zertifizierung: Karrierechancen und Vorteile für deinen IT-Job

AUTOR • Aug 10, 2026
DevOps & Deployment

Diff, ein geteilter Unterschied: Was der Begriff bedeutet und wann du ihn brauchst

AUTOR • Aug 10, 2026
DevOps & Deployment

tar.gz: Was Sie über das Komprimierungsformat wissen sollten

AUTOR • Aug 10, 2026
DevOps & Deployment

Die besten Linux-Bücher: Ein umfassender Leitfaden für Anfänger und Fortgeschrittene

AUTOR • Aug 10, 2026
DevOps & Deployment

Nautilus Linux: eine tiefgruendige erkundung des benutzerfreundlichen Linux-Betriebssystems

AUTOR • Aug 10, 2026
API & Webservices

Sprüche für Weihnachtskarten Familie: Die besten kurzen, warmen und echten Worte

AUTOR • Aug 10, 2026
Backend

Autokennzeichen Oehr und HR: Geschichte, Bedeutung und was wirklich dahinter steckt

AUTOR • Aug 09, 2026
Frontend

Was ist ein Seitenumbruch? Einfach erklärt für Word, PDF und Web

AUTOR • Aug 09, 2026
JavaScript

D Programming Language: So stark ist D für schnelle, sichere Software

AUTOR • Aug 08, 2026
Backend

STD Signal: Was es bedeutet, warum es wichtig ist und wie du schneller erkennst, was wirklich los ist

AUTOR • Aug 08, 2026
Datenbanken

Energieflussdiagramm erstellen: So visualisierst du Energieflüsse klar, schnell und verständlich

AUTOR • Aug 08, 2026
API & Webservices

Geschenke zum Geburtstag Männer: 25 Ideen, die wirklich ankommen

AUTOR • Aug 08, 2026
JavaScript

Zeichen größer machen: So vergrößerst du Zeichen schnell und sauber

AUTOR • Aug 08, 2026
Frontend

Fläche und Umfang geometrischer Figuren: So berechnest du Formen schnell und sicher

AUTOR • Aug 08, 2026

Beliebte Beiträge

Frontend

Autokennzeichen LS: Bedeutung und Hintergrundinformationen

AUTOR • Jun 18, 2024
Frontend

Autokennzeichen NOAA: Was es bedeutet und wer es benötigt

AUTOR • Jun 18, 2024
Frontend

Thunderbird-Symbol: Bedeutung, Verwendung und Personalisierung

AUTOR • May 09, 2024
Frontend

Hochzeitskarte Text für beste Freunde: Herzliche Ideen und Beispiele

AUTOR • May 12, 2025
Frontend

Einzigartige Wünsche zur Jugendweihe: Kreative Ideen für diesen besonderen Tag

AUTOR • May 12, 2025
API & Webservices

Persönliche Glückwünsche zum Geburtstag: Kreative Ideen und Tipps

AUTOR • May 12, 2025
Frontend

Herzliche Glückwünsche zur Geburt: Die besten Ideen für Karten und Botschaften

AUTOR • May 12, 2025
Frontend

Umfang und Flächeninhalt des Kreises: Formel und Anwendungen

AUTOR • May 05, 2025
Datenbanken

Die Epoche Barock: Merkmale, Einflüsse und Bedeutung

AUTOR • May 05, 2025
DevOps & Deployment

Bash Script Beispiel: Pragmatische Anwendungen für Ihre Shell-Skripte

AUTOR • Apr 12, 2025
Datenbanken

Kaufvertragsstörungen Beispiele: Häufige Probleme im Kaufvertrag

AUTOR • Apr 04, 2025
Frontend

Autokennzeichen Mod: Alles, was Sie über die neuesten Trends bei der Nummernschild-Modifikation wissen müssen

AUTOR • Jun 18, 2024
Frontend

Kennzeichen BW1: Bedeutung, Herkunft und Verwendung

AUTOR • Apr 07, 2025
Frontend

Erstelle benutzerdefinierte Google-Symbole mithilfe von SVG

AUTOR • May 09, 2024
Frontend

Besondere Sprüche zur Jugendweihe Karte: Kreative Ideen für einen unvergesslichen Tag

AUTOR • May 12, 2025
Frontend

Einzigartige Glückwünsche zur Vermählung: So gestalten Sie Ihre Botschaft unvergesslich

AUTOR • May 12, 2025
Frontend

Kreative Hochzeitsglückwünsche: Textbeispiele für jeden Anlass

AUTOR • May 12, 2025
Frontend

Herzerwärmende Sprüche zur Eheschließung: Die besten Zitate für den schönsten Tag

AUTOR • May 12, 2025
API & Webservices

Die besten Geburtstagstexte für jeden Anlass

AUTOR • May 12, 2025
API & Webservices

Die besten Sprüche für die Freundin: Kreative Ideen für jeden Anlass

AUTOR • May 12, 2025