Continuous Performance Testing (CPT) ist eine Methode des Performance Testing, bei der die Leistung von neu entwickelten Anwendungen oder Systemen automatisch und kontinuierlich überwacht und überprüft wird. CPT ermöglicht frühzeitige Erkennung von Leistungsproblemen, automatisiert Lasttests und gibt Einblick in die Leistung Ihrer Applikation oder des Systems. Um erfolgreich CPT durchzuführen, ist es wichtig, die richtigen Prozesse und Tools einzusetzen und Kenntnisse von CI/CD, DevOps und Performance Tests zu haben. Mit diesem Artikel möchte ich auch aufzeigen, wie Performance Testing sinnvoll als Teil einer CI/CD integriert werden kann und so den DevOps Ansatz unterstützt. Dazu gehe ich auch auf die Herausforderungen ein und möchte Ansätze aufzeigen, wie diese gelöst werden können.
Allgemeines zu CI/CD und DevOps
Continuous Integration und Continuous Delivery (CI/CD) sind inzwischen nichts Neues mehr. Durch die immer schneller stattfindenden Produkt-Release-Zyklen gehört es schon zum guten Ton, in einem Projekt eine CI/CD Build Pipeline zu erstellen. Denn nicht nur das reine Kompilieren des Quellcodes wird dabei durchgeführt, sondern es finden auch statische Codeanalysen und Ausführung von Unit Tests statt. Zusätzlich zu diesen entwicklungsnahen Tätigkeiten sollten jedoch auch die Qualitätssicherungsmaßnahmen ausgeführt werden, die gewöhnlich funktionale und nicht funktionale Tests umfassen. Somit kommen neben API Tests und UI Tests in einer Testautomatisierung auch nicht funktionale Testarten wie Penetration und Performance Tests immer größere Bedeutung. Denn im Idealfall können mit einer Delivery Pipeline alle notwendigen Aktivitäten bis zur Auslieferung automatisiert und gute Aussagen über die Qualität der Anwendung oder des Systems getroffen werden.