Tipp erstellen
Da man unter continuous integration einen zyklischen Buildprozess versteht, kann man sich natürlich fragen, was das Ganze mit einer interpretierten Skriptsprache wie PHP zu tun hat. Hier werden keine Programme gebaut. Trotzdem kann dieser Prozess bei der Entwicklung in dieser Sprache sehr nützlich sein, denn nicht nur das Bauen der Sourcen kann als wiederholende Aufgabe Sinn machen.
Gute Entwicklerteams haben eine Reihe von Testerfahren, wie Unit Tests, GUI Tests oder Regressionstests, entwickelt, um die Stabilität ihres Systems zu garantieren. Diese Tests könnten durch kontinuierliches Ausführen automatisiert werden. Alle Entwickler würden also direkt Feedback vom System bekommen, falls sich irgendwo ein Fehler eingeschlichen hat, den man nicht durch reines Hinsehen erkennen konnte. Des weiteren wäre es der perfekte Zeitpunkt die komplette Dokumention zu erstellen. Für diese Doku eignen sich besonders Programme, wie PHPDocumentor, das ähnlich wie JavaDoc funktioniert und auch eine sehr ähnliche Syntax aufweist.
Ein typisches Lambda zwischen zwei Bauabschnitten könnte eine Stunde sein oder an ein Source Code Management Tool gebunden werden. Diese Zeiten können aber von Team zu Team variieren und sollten die Erfahrungswerte des jeweiligen Projektes widerspiegeln. Sollte man zu einem continuous integration Tool tangieren, dann sei die Kombination von Cruise Control und PhpUnderControl empfohlen. Dabei wird besonders auf der PHP Seite Wert darauf gelegt eine gute Abdeckung der Funktionalität von PHPUnit von Sebastian Bergmann zu erzielen. Code Coverage wird genauso unterstützt, wie eine Art Checkstyle, das Ausschau nach Verstößen gegen die Coding Conventions hält.
Alles in allem hilft die Einführung eines continuous integration Prozesses die Code Qualität drastisch zu verbessern und sollte in jedem größeren Projekt Einkehr finden.
![]() |
Dieser Tipp wurde bereitgestellt von Nils Langner Herr Langner arbeitet bei plan08 - Agentur für neue Medien |