Trauen wir uns nun mithilfe von PIT zu sagen, ob eine Testsuite verlässlich ist? Wie immer ist die Antwort ein eindeutiges “Jein”.
Es liefert eine Aussage über die Qualität der Unittests, die vorhanden sind. Eine hohe Testabdeckung in Kombination mit hoher Teststärke stimmt uns dabei stark optimistisch. Sollte das nicht der Fall sein, heißt das aber nicht, dass die Testsuite unbedingt schlecht ist. Zwei Gründe dafür sind:
- Eine niedrige Coverage bedeutet nicht unbedingt große Lücken im Testing – wenn die vorhandenen Tests mit sehr viel Bedacht entwickelt wurden um die Kernfunktionalität zu gewährleisten, dann kann das durchaus eine gute Testsuite sein
- PIT funktioniert nur auf Unittests, Testsuites, die auf E2E- oder Integrationstests aufbauen, können damit nicht bzw. nur bedingt geprüft werden
Es wird für uns also nur eine Metrik von vielen sein, die sich – gemeinsam mit anderen – zu einem Gesamtbild über die Verlässlichkeit der Testsuite zusammenfügen.
Trotzdem (oder gerade deshalb?) hat sich PIT als sehr probates Mittel herausgestellt, um Lücken im Testing zu finden – alle an dem Projekt beteiligten Entwickler möchten es in ihre Projekte einführen, um dort die Qualität der Unittests regelmäßig zu testen und dadurch auch weiter zu verbessern
Und dieses wunderschöne Diagramm, erstellt von unserem Senior-Hobby-Grafiker Sascha, veranschaulicht, wie wir die PIT-Ergebnisse künftig interpretieren werden: