Automatische Tests, Reports und Quality Gates
Prüfungsbezug: DOP-C02 Domain 1 zu Pipelines, Tests, Artefakten oder Deployment.
Lernziel
Testtypen richtig platzieren und Pflichtergebnisse als Blockade durchsetzen.
| Difficulty / Schwierigkeitsgrad | Mittel |
| Study time / Lernzeit | 120 Minuten |
| Prerequisites / Voraussetzungen | Vorherige Lektionen dieses Bandes |
Berufliches Szenario
Pipeline kompiliert, führt aber keine Integration oder Akzeptanz aus.
Kernkonzepte
- Unit-, Integrations-, Akzeptanz-, statische und Security-Tests beantworten unterschiedliche Risiken.
- CodeBuild Report Groups sammeln unterstützte Formate.
- Report schafft Sichtbarkeit; Gate erzwingt Ergebnis.
- Isolierte Testumgebungen reduzieren Zustandskonflikte.
Architekturablauf
- Release-Input und unveränderliche Identität bestimmen.
- Managed AWS Control Plane und Least-Privilege-Rolle wählen.
- Build-, Test-, Artefakt- oder Deployment-Arbeit ausführen.
- Service Events, Logs, Reports und Runtime-Metriken sammeln.
- Nach klaren Regeln stoppen, wiederholen oder zurückrollen.
Entscheidungsmatrix
| Anforderung | Bevorzugte Wahl | Begründung |
|---|---|---|
| Schneller deterministischer Test | Frühe Build-Action | Schnelles Feedback |
| Test mit deployter Dependency | Integration Stage | Realistische Interaktion |
| Unabhängige Suiten | Parallele Actions | Kürzere Dauer |
Fehlerbilder und Fehlersuche
- Report wird publiziert, Befehl liefert aber Erfolg.
- Coverage gilt fälschlich als Korrektheitsbeweis.
- Gemeinsame Testdaten erzeugen Flakiness.
Sicherheit und Betrieb
- Kurzlebige Service-Rollen und Least Privilege.
- Artefakte verschlüsseln und Secrets aus Logs fernhalten.
- Änderungen und Freigaben für Audit erfassen.
Praxislabor
Goal / Ziel: JUnit-Report publizieren und Fehler erzwingen.
Aufgaben
- Kleinste sichere Testarchitektur erstellen.
- Hauptworkflow umsetzen oder simulieren.
- Einen kontrollierten Fehler einführen.
- Anhand von Service-Nachweisen diagnostizieren.
- Cleanup und eine Verbesserung dokumentieren.
Validierung
- Workflow nutzt unveränderliche Version.
- Pflichtfehler blockiert Promotion.
- Diagnose identifiziert ersten fehlerhaften Übergang.
Cost control / Kostenkontrolle: Ressourcen kurzlebig halten; Cleanup vorher lesen.
Aufräumen
- Pipeline-, Build- und Deployment-Ressourcen löschen.
- Temporäre Artefakte, Images, Logs und Rollen entfernen.
Prüfungsfallen
- Reports ohne Gates.
- Langsame Tests vor günstigen Checks.
Wichtigste Erkenntnisse
- Unit-, Integrations-, Akzeptanz-, statische und Security-Tests beantworten unterschiedliche Risiken.
- Isolierte Testumgebungen reduzieren Zustandskonflikte.
- Entscheidungen werden mit Anforderungen und Fehlerverhalten begründet.
Wiederholungsfragen
- Was ist die unveränderliche Release-Identität?
- Welche Nachweise belegen Erfolg oder Fehler?
- Was ist die sicherste Recovery-Aktion?
Antworten
- Version, Digest oder eindeutig versioniertes Artefakt.
- Service Events, Logs, Reports, Health Checks und Runtime-Metriken.
- Bekannte gute Version über konfigurierten Rollback wiederherstellen.