Alle Tools in einer Grafik vereint

Die Continuous Delivery Chain – Infografik
Kommentare

Über die letzten Ausgaben des PHP Magazins haben wir uns damit beschäftigt, wie man Jenkins so aufsetzt, dass es Teile der Continuous Integration und Continuous Delivery Chain automatisiert abbilden kann. Allerdings handelt es sich dabei nur um den obersten Teil der CD Chain.

Über das vergangene Jahr hinweg hat René Schröder in Artikeln im PHP Magazin gezeigt, wie Jenkins für dynamische sowie statische Softwaretests und zur Erstellung einer Dokumentation vorbereitet wird. Ein weiterer wichtiger Schritt, um die Continuous-Delivery-Chain zu vervollständigen, waren Behavior-driven-Development-(BDD-)Tests beziehungsweise Akzeptanztests.

Continuous Delivery Chain

Nach Teil eins der aktuellen Artikelreihe war der Jenkins-Server perfekt für die spätere Ausführung der BDD-Tests vorbereitet worden. Docker, Selenium und ein Framebuffer waren installiert und konfiguriert. Im zweiten Teil schrieben wir die BDD-Tests mit Codeception, erstellten ein ANT-Build-Skript und konfigurierten Jenkins, um nach jedem Commit BDD-Tests auszuführen und die Testergebnisse zu visualisieren.

Die Continuous Delivery Chain

BDD-Tests sind ein weiterer wichtiger Bestandteil der Continuous Delivery Chain, der eben nun auch in Jenkins abgebildet werden konnte. Mithilfe von Techniken wie Docker können diese Tests auch jederzeit um Last- oder Performancetests erweitert werden. Ohne große Anstrengungen können verschiedene Konfigurationen vom Apache-Server oder der MySQL-Datenbank getestet werden, um eine bestmögliche Abstimmung zu erreichen. Werden die Tests um weitere Browser erweitert, kann zudem eine möglichst große Anzahl von Internetusern beziehungsweise der von ihnen genutzten Browsern abgedeckt werden.

In der aktuellen Ausgabe, dem PHP Magazin 6.16, haben wir uns schließlich angesehen, wie mithilfe von Codeception und Jenkins ein weiterer Teil der CD Chain in PHP abgebildet werden konnte. Codeception bietet einen guten Kompromiss, um die Akzeptanztests BDD-nah gestalten zu können; einen reinen BDD-Ansatz im PHP-Umfeld bietet Behat/Mink. Der Einsatz von Docker-Containern ermöglicht es perspektivisch, die Tests verteilen zu können, was gerade in Kombination mit Selenium Grid ein Ansatz paralleler Ausführung ist. Docker eignet sich darüber hinaus auch, um den fertigen Build zu versionieren und gezielt ausrollen zu können, was dem DevOps-Ansatz zugute kommt.

Viele Tools, ein Ziel

Um eine Continuous Intergration Chain in eine Continuous-Delivery-Chain zu überführen, ist eine Zusammenarbeit zwischen Developern und Operations unerlässlich. Herrscht der DevOps-Gedanke und ist die Kommunikation zwischen den Teams entsprechend gefestigt, kann die Continuous Delivery Chain effektiv und effizient mit den jeweiligen Schwerpunkten bei Operations oder Developern etabliert werden.

Wie genau diese CD Chain aussieht, welche Tools also in welchem Bereich zum Einsatz kommen, haben wir zusammen mit René Schröder, dem Autoren der Artikelreihe, in einer Infografik visualisiert. Worauf also warten? Mit diesen Tools lässt sich eine Continuous Integration Chain zielgerichtet in eine Continuous Delivery Chain überführen. Lang lebe der DevOps-Gedanke!

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -