Zurück zur Übersicht

Begriff

Test Coverage

Testing QA S1
2 Quellen 0 Lernpfade 0 Backlinks enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Du hast 100 Zeilen Code. Dein Test prüft 80 Zeilen davon. Deine Test Coverage ist 80%. Das ist eine Metrik, die sagt: "Wie viel von meinem Code wurde während der Tests mindestens einmal ausgeführt?" Es hilft, tote Winkel zu finden ("Oh, der else-Block wird nie getestet!"). Aber Achtung: 100% Coverage heißt nicht, dass der Code fehlerfrei ist. Es heißt nur, dass er ausgeführt wurde. (Er kann trotzdem das Falsche tun).

Merksatz: Ein Maß dafür, welcher Anteil des Quellcodes (Zeilen, Zweige, Funktionen) durch automatisierte Tests ausgeführt wird.


Quick-Check

  1. Ist 100% das Ziel?
    Nein. Pareto-Prinzip. Die letzten 10% (Error Handling für exotische DB-Fehler) zu testen, kostet extrem viel Zeit. 80-90% ist gesund. Google peilt oft 85% an.
  2. Coverage als KPI?
    Gefährlich (Goodhart's Law). Wenn Manager Boni für 100% Coverage zahlen, schreiben Entwickler sinnlose Tests (assert(1==1)), nur um die Zahl hochzutreiben.
  3. Live Coverage?
    Man kann Coverage auch in Produktion messen ("Welcher Code wird von echten Usern genutzt?"). Hilft beim Aufräumen von Dead Code ("Diese Funktion wurde seit 1 Jahr nicht aufgerufen -> Löschen").