Skip to main content

Automated tests, reports, and quality gates

Exam alignment: DOP-C02 Domain 1 task statements for pipelines, testing, artifacts, or deployment.

Learning objective

Place test types correctly and make required evidence block promotion.

Difficulty / SchwierigkeitsgradIntermediate
Study time / Lernzeit120 minutes
Prerequisites / VoraussetzungenPrevious lessons in this volume

Professional scenario

Pipeline compiles successfully but does not run integration or acceptance tests.

Core concepts

  • Unit, integration, acceptance, static, and security tests answer different risks.
  • CodeBuild report groups collect supported test formats.
  • A report creates visibility; a gate enforces an outcome.
  • Isolated test environments reduce state conflicts.

Architecture flow

  1. Identify the release input and immutable identity.
  2. Select the managed AWS control plane and least-privilege role.
  3. Execute build, test, artifact, or deployment work.
  4. Collect service events, logs, reports, and runtime metrics.
  5. Stop, retry, or roll back according to explicit rules.

Decision matrix

RequirementPreferred choiceReason
Fast deterministic testEarly build actionQuick feedback
Deployed dependency testIntegration stageRealistic interaction
Independent suitesParallel actionsLower duration

Failure modes and troubleshooting

  • Report is published but command returns success.
  • Coverage is treated as proof of correctness.
  • Shared test data causes flaky outcomes.

Security and operations

  • Use short-lived service roles and least privilege.
  • Encrypt artifacts and protect logs from secret exposure.
  • Record changes and approvals for audit.

Hands-on lab

Goal / Ziel: Publish a JUnit report and enforce failure.

Tasks

  1. Create the smallest safe test architecture.
  2. Implement or simulate the main workflow.
  3. Introduce one controlled failure.
  4. Diagnose it from service evidence.
  5. Document cleanup and one improvement.

Validation

  • The workflow uses an immutable version.
  • A required failure blocks promotion.
  • The diagnosis identifies the first failed transition.

Cost control / Kostenkontrolle: Keep resources short lived; read cleanup before starting.

Cleanup

  1. Delete pipeline/build/deployment resources.
  2. Delete temporary artifacts, images, logs, and roles.

Exam traps

  • Reports without gates.
  • Slow tests before cheap checks.

Key takeaways

  • Unit, integration, acceptance, static, and security tests answer different risks.
  • Isolated test environments reduce state conflicts.
  • Decisions must be justified by requirements and failure behavior.

Review questions

  1. What is the immutable release identity?
  2. Which evidence proves failure or success?
  3. What is the safest recovery action?
Answers
  1. A version, digest, or uniquely versioned artifact.
  2. Service events, logs, reports, health checks, and runtime metrics.
  3. Restore the known-good version using the configured rollback path.