Was ist das Ziel der Testüberdeckung bei Modultests?
Das Ziel der Testüberdeckung bei Modultests ist sicherzustellen, dass der Code möglichst vollständig getestet wird. Dies wird durch verschiedene Maße der Testüberdeckung wie Anweisungsüberdeckung (C0), Zweigüberdeckung (C1) und Pfadüberdeckung (C2) erreicht.
Was ist Anweisungsüberdeckung (C0)?
Anweisungsüberdeckung (C0) stellt sicher, dass jede Anweisung im Code mindestens einmal getestet wird. Es ist leicht zu berechnen und deckt nicht ausgeführte Anweisungen auf, berücksichtigt jedoch nicht Datenabhängigkeiten oder leere Zweige.
Was sind die Vor- und Nachteile der Anweisungsüberdeckung (C0)?
Was ist Zweigüberdeckung (C1)?
Zweigüberdeckung (C1) stellt sicher, dass jeder Zweig (jede Kante) im Code mindestens einmal getestet wird. Sie hat eine höhere Fehlerentdeckungsrate als C0, erfasst jedoch nicht alle Fälle komplexer Bedingungen und Schleifen.
Was sind die Vor- und Nachteile der Zweigüberdeckung (C1)?
Was ist Pfadüberdeckung (C2)?
Pfadüberdeckung (C2) stellt sicher, dass alle möglichen Pfade (Abfolge von Knoten und Kanten) durch den Code getestet werden. Sie hat die höchste Fehlerentdeckungsrate, erfordert jedoch enorm viele Testfälle und ist oft praktisch nicht umsetzbar.
Welche Varianten der Pfadüberdeckung (C2) gibt es?
Es gibt mehrere Varianten der Pfadüberdeckung:
Welche Vorteile und Nachteile hat die Pfadüberdeckung (C2)?
Warum ist eine hohe Testüberdeckung nicht immer ein Indikator für gute Tests?
Eine hohe Testüberdeckung zeigt zwar, dass der meiste Code getestet wurde, lässt sich jedoch auch erreichen, ohne tatsächlich sinnvolle Tests durchzuführen. Daher sollte die Qualität der Tests ebenfalls geprüft werden, idealerweise durch andere Personen.
Welche Metrik verwendet die Anweisungsüberdeckung (C0)?
Die Metrik für Anweisungsüberdeckung (C0) ist das Verhältnis der Anzahl der überdeckten Anweisungen zur Gesamtanzahl der Anweisungen im Code.