End-to-end Test Orchestrierung

Problem

Software-Testing ist bereits größtenteils automatisiert, dazu sind verschiedene Test-Technologien im Einsatz. Aufwand für Wartung der automatisierten Tests ist hoch. Dennoch werden Bugs oft erst spät identifiziert. Qualität und Mehrwert des automatisierten Testens ist nicht klar darstellbar. 

Lösung

Unterstützung von Expert:innen bei der schrittweisen Umsetzung von best pratcie end-to-end Test Orchestrierung in einer flexiblen Plattform führt zu schlanken, wartbaren Pipelines, die Ergebnisse unterschiedlicher Testing-Tools  übersichtlich zusammenführen. Durch end-to-end Sicht werden wiederholte Problemstellen sichtbar und schrittweise Verbesserung des Testings möglich.

Das Problem

  • Mehrere Testing-Tools werden eingesetzt. Zusammenführung der Ergebnisse und Orchestrierung der Tests ist aufwändig. Viel Zeit und Aufwand wird in die Entwicklung und Wartung von Test-Pipelines investiert.
  • Viele Ressourcen werden in Test-Automatisierung investiert. Es ist nicht klar darstellbar, ob und wie dieser Ressourceneinsatz zur Qualität im Testing und in der Software beiträgt. 
  • Tester:innen beschäftigen sich mit Test-Orchestrierungs-Pipelines oder DevOps Expert:innen unterstützen in der Test-Automatisierung, ohne Einblick in die Logik der Tests. In beiden Fällen sind die Ergebnisse suboptimal da Expertise im jeweils anderen Bereich fehlt. Ergebnis sind brüchige Pipelines mit langen Laufzeiten. 
  • Prozessprobleme im Testing führen dazu, dass fehlgeschlagene Tests häufig übersehen oder ignoriert werden, wodurch der Mehrwert von automatisiertem Testen sinkt. 
  •  Manche Tests sind nur teilautomatisiert, da sie z.B. spezielle Testdaten brauchen oder auf spezieller Infrastruktur durchgeführt werden müssen. Da aufwändig, werden diese Tests nur selten durchgeführt. So werden manche Bugs erst spät identifiziert und ihre Behebung dadurch sehr teuer. 

Die Lösung

  • Unsere erfahrenen Expert:innen unterstützen Sie bei der schrittweisen end-to-end Orchestrierung Ihrer Test Pipelines in der hochflexiblen Cloudomation Plattform. 
  • Durch unsere Erfahrung mit Test-Orchestrierung erkennen wir schnell Flaschenhälse und potentielle Problemstellen in bestehenden Pipelines und empfehlen Verbesserungen.
  • End-to-End Sicht der gesamten Test-Pipeline zeigt, wo Probleme auftreten und machen zielgerichtete Verbesserungen möglich. Durch Messzahlen für die gesamte Pipeline wird Status und Fortschritt messbar. 
  • Funktionierende Automatisierungen bleiben bestehen. Es wird dort angesetzt, wo Test Pipelines zu langsam oder brüchig sind. Verbesserungen werden schrittweise umgesetzt, sodass schnell ein Mehrwert spürbar wird. 
  • Dank breiter Integrations- und Automatisierungsfunktionalität können sämtliche Test-Tools zusammengeführt und Ergebnisse einheitlich aufbereitet werden. 
  • Auch spezielle Test-Szenarien (z.B. mit Erstellung von Test-Daten oder auf spezieller Infrastruktur) werden vollständig automatisiert. So können Sie mit wenig Aufwand häufig durchgeführt werden. Bugs werden früh erkannt und schnell behoben.

So funktioniert es

Hochflexible Plattform für Test-Orchestrierungdank breiter Integrationsfunktionalität können nahezu alle Testing-Tools über Cloudomation orchestriert werden. Das heißt, dass in Cloudomation die Ablauflogik der Tests inklusive eventueller Abhängigkeiten definiert werden, die Tests selbst aber in den jeweils spezialisierten Testing-Tools durchgeführt werden. Die Ergebnisse der Tests können von Cloudomation aus den einzelnen Testing-Tools abgefragt und übersichtlich an einem Ort präsentiert werden. 

Anbindung bestehender Tools: Die Teile Ihrer Test-Pipelines, die bereits gut funktionieren, können weiter genutzt und über Cloudomation orchestriert – also angestoßen – werden. 

Übersicht und Messbarkeit: Durch die End-to-End Automatisierung der gesamten Test-Pipeline wird ein Überblick über die gesamte Test-Kette möglich. Kennzahlen z.B. zu häufig fehlgeschlagenen Tests nach verschiedenen Variablen (z.B. branch, Zielumgebung, committer) können berechnet werden, wodurch Problemstellen sichtbar und damit zielgerichtete Verbesserungen möglich werden. 

Schrittweise Umsetzung: Um mit bestehenden Ressourcen schnell einen Mehrwert zu schaffen unterstützen wir tatkräftig bei der Planung und Umsetzung der ersten Schritte zur Optimierung Ihres Testings. Dabei identifizieren wir gemeinsam erste Ansatzpunkte, bei denen wir schnell Verbesserungen umsetzen können, sowie einen schrittweisen Plan für die Weiterentwicklung Ihrer end-to-end Test Orchestrierung, den Sie mir Ihren bestehenden Ressourcen umsetzen können. Ziel ist es, Ihnen zu Beginn zu helfen, rasch erste Ergebnisse zu sehen und Ihr Team zur selbständigen Weiterarbeit mit Cloudomation zu befähigen, sodass Optimierung Ihrer Test-Pipelines ein kontinuierlicher Prozess bleibt, den Sie selbständig durchführen können.

Das Ergebnis

Aufwand für DevOps sinkt:

  • Durch automatisierte Datensammlung wird Zeit für Fehlersuche drastisch reduziert.
  •  End-to-end Überblick erleichtert Wartung deutlich.

Optimierung wird möglich, time-to-market sinkt:

  • Da Lücken und Flaschenhälse sichtbar werden, wird klar, wo Verbesserung ansetzen muss.
  • Optimierung kann schrittweise stattfinden, mit aktuell zur Verfügung stehenden Ressourcen.

Zusammenarbeit zwischen Teams verbessert sich:

  • Informationen stehen allen zur Verfügung.
  • Abhängigkeiten werden sichtbar.
  • Teams können unabhängiger agieren, da sie selbst die Pipeline Tools bedienen können.

Probieren Sie es aus!

Mit diesem ausgezeichneten Buch haben die Autoren Paul Ammann und Jeff Offutt eine umfassendste und anwendbare Aufarbeitung des Themas Software Testing geschaffen. Neben fundierter Grundlagen zum Thema eignet sich das Buch auch als Nachschlagwerk zu spezifischen Themen wie z.B. Coverage Kriterien und dem Umgang mit häufigen Problemen mit Testing in der Praxis.