Eine EinfĂĽhrung in Continuous Delivery, Teil 3: Acceptance Test Stage

In einer Continuous Delivery Pipeline wird jeder Softwarestand in mehreren Teststufen einer Vielzahl automatisierter Tests unterzogen. Hier wird nun der Aufbau der sogenannten Acceptance Test Stage beschrieben, die die Akzeptanzkriterien der Software ĂĽberprĂĽft.

vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 15 Min.
Von
  • Alexander Birk
  • Christoph Lukas
Inhaltsverzeichnis

In einer Continuous Delivery Pipeline wird jeder Softwarestand in mehreren Teststufen einer Vielzahl automatisierter Tests unterzogen, um die funktionalen und nichtfunktionalen Anforderungen an die Software kontinuierlich zu ĂĽberprĂĽfen. In diesem Artikel beschreiben die Autoren den Aufbau der zweiten Teststufe, der sogenannten Acceptance Test Stage, die die Akzeptanzkriterien der Software ĂĽberprĂĽft.

Im vorhergehenden Artikel wurde der Aufbau der ersten Teststufe, der sogenannten Commit Stage, anhand eines einfachen Beispielprojekts beschrieben: In ihr kompiliert der Build-Server für jede Änderung der Software den Sourcecode der Komponenten und führt die Unit-Tests aus. Das erzeugte Binärartefakt ist eindeutig versioniert und wird für die Verwendung in folgenden Teststufen und die Installation auf Test- und Produktivsystemen in einem einfachen Repository gespeichert.

Mehr Infos

Eine EinfĂĽhrung in Continuous Delivery

Mit dem erfolgreichen Durchlauf der Commit Stage und der gelungenen AusfĂĽhrung der Unit-Tests ist die grundlegende Funktion der Software sichergestellt. Dann und nur dann ist es sinnvoll, den Softwarestand weitergehenden Tests zu unterziehen, um festzustellen, ob er auch fĂĽr einen Einsatz auf einem Produktivsystem geeignet ist. In der jetzt folgenden Teststufe, der sogenannten Acceptance Test Stage, werden dazu die Akzeptanzkriterien der Software ĂĽberprĂĽft. Hierbei geht es zum einen um das Sicherstellen der Funktionen aus Sicht der Benutzer, zum anderen aber auch um die PrĂĽfung nichtfunktionaler Anforderungen wie der Performance der Anwendung. Die gesamte Acceptance Test Stage wird nur ausgefĂĽhrt, wenn die vorhergehende Commit Stage erfolgreich war.

Der jetzige Artikel beschreibt unter Wiederverwendung des Beispielprojekts aus dem zweiten Artikel die konkreten Schritte, die zum Aufbau einer Acceptance Test Stage notwendig sind. Dazu steht wieder eine (aktualisierte) virtuelle Maschine bereit, um die Umsetzung der Aufgabe nachzuvollziehen.

In der Acceptance Test Stage fallen die folgenden Aufgaben an:

  • Deployment des Softwarestands auf eine Testumgebung,
  • AusfĂĽhren der Akzeptanztests und
  • Erzeugen von Feedback zu Regressionen an die Entwickler.

Für das Deployment der Software auf eine Testumgebung werden dabei immer die in der Commit Stage erzeugten Binärartefakte wiederverwendet. Dieses Vorgehen gewährleistet, dass man sicher sein kann, dass das auf dem Produktionssystem installierte Artefakt mit dem identisch ist, das zuvor erfolgreich durch die Pipeline gelaufen ist.

Um die notwendigen Schritte für den Aufbau einer Acceptance Test Stage zu veranschaulichen, wird nun am Beispielprojekt exemplarisch ein Oberflächentest ausgeführt.