PHPUnit ist ein Testframework für PHP. Ein Test beschreibt einen kontrollierten Ausgangszustand, führt einen kleinen Teil der Anwendung aus und vergleicht das Ergebnis mit einer Erwartung. Dadurch lässt sich nach Änderungen schnell feststellen, ob bereits abgesichertes Verhalten weiterhin funktioniert.
Gute Tests prüfen nicht nur den Erfolgsfall. Ungültige Eingaben, Ausnahmen, Grenzwerte und Abhängigkeiten gehören ebenfalls dazu. Datenanbieter helfen, mehrere Varianten mit derselben Testlogik abzudecken. Test Doubles können externe Systeme ersetzen, sollten aber nicht dazu führen, dass nur noch die eigene Nachbildung statt des echten Zusammenspiels geprüft wird.
Die Dokumentation ist versionsbezogen. PHPUnit-Version, PHP-Version und verwendetes Framework müssen zusammenpassen. Bei älteren Projekten ist vor einem Upgrade zu prüfen, welche Annotationen, Attribute oder Konfigurationsoptionen geändert wurden.
Nutzen im Entwicklungsablauf
- Kleine fachliche Regeln und Fehlerfälle reproduzierbar absichern.
- Regressionen nach Refactorings früh erkennen.
- Tests lokal und in einer CI-Pipeline identisch ausführen.
Ein Test ist besonders wertvoll, wenn sein Name das erwartete Verhalten verständlich beschreibt und ein Fehlschlag klar zeigt, welche Annahme verletzt wurde.
