
Die meisten Entwicklerinnen und Entwickler, die täglich mit PHPUnit arbeiten, kennen die Grundlagen aus dem Effeff: assertSame()
, #[Before]
, vielleicht noch ein paar Data Provider. Doch PHPUnit kann deutlich mehr. Unter der Haube schlummern Funktionen, Optionen und Workflows, die selbst erfahrene Profis oft noch nie gesehen haben, geschweige denn nutzen.
In meinem Vortrag "So you think you know PHPUnit" zeige ich, wie du diese weniger bekannten Funktionen entdecken und gezielt einsetzen kannst. Dabei geht es nicht um exotische Spielereien, sondern um Features, die deinen Testcode robuster, aussagekräftiger und wartbarer machen. Sie helfen dir, jeden Tag noch mehr aus PHPUnit herauszuholen.
In diesem Artikel findest du die wichtigsten Erkenntnisse aus dem Vortrag: kompakt zusammengefasst und sofort anwendbar.
-
Benutze die Namen deiner Tests, um kurz und präzise zu beschreiben, welchen Aspekt deiner Software sie abdecken.
Automatisierte Tests können mehr als nur überprüfen, ob deine Software richtig funktioniert. Sie können auch als ausführbare Spezifikation und Dokumentation deiner Software dienen. Die TestDox-Ausgabe sollte auch für deine Fachexpertinnen und Fachexperten verständlich sein.
-
Benutze die CLI-Option
--check-php-configuration
, um sicherzustellen, dass dein PHP-Interpreter für die Entwicklung und das Testen mit PHPUnit sinnvoll konfiguriert ist. -
Benutze die CLI-Option
--generate-configuration
, um eine XML-Konfigurationsdatei für PHPUnit für dein Projekt zu erstellen, die Best Practices verwendet. -
Benutze Attribute wie
#[CoversClass]
, um zu dokumentieren, welchen Code deine Tests abdecken sollen.PHPUnit nutzt diese Informationen zum Beispiel, um den Code Coverage-Bericht präziser zu machen und die Testauswahl mit der CLI-Option
--covers
zu unterstützen. -
Benutze die Attribute
#[Small]
,#[Medium]
und#[Large]
, um den Scope einer Testklasse zu dokumentieren.PHPUnit nutzt diese Informationen beispielsweise, um den Code Coverage-Bericht präziser zu machen und die Testauswahl mit der CLI-Option
--group
zu unterstützen.
Zum Abschluss möchte ich darauf hinweisen, dass PHPUnit trotz seiner vielen Funktionen nur ein Teil einer erfolgreichen Teststrategie ist. Weitere interessante Themen rund um PHP-Entwicklung und moderne Testmethoden findest du in meinen anderen Artikeln und Vorträgen.
Falls du Unterstützung bei der Implementierung oder Optimierung deiner Tests benötigst, biete ich auch Schulungen und Beratungsleistungen an. Kontaktiere mich gerne, um gemeinsam deine Testprozesse auf das nächste Level zu bringen.