This section focuses on the following key exam objectives:
Domain 1: SDLC Automation
Task 1.2: Integrate Automated Testing into CI/CD Pipelines
◆◆◆◆◆◆
Automated testing plays a critical role in maintaining code quality, security, and performance across the Software Development Lifecycle (SDLC). Each test type serves a distinct purpose and is executed at specific stages of a CI/CD pipeline.
Purpose: Validate individual functions, classes, or methods in isolation.
Common Tools: JUnit (Java), pytest (Python), Mocha (Node.js).
AWS Integration: Frequently executed in AWS CodeBuild or via GitHub Actions.
📌 Exam Tip: Unit tests should be lightweight, fast, and executed early in the pipeline—typically during the source or build stage—to detect defects as soon as possible.
Purpose: Verify interactions between multiple components, APIs, and backend services.
Common Tools: Postman, REST Assured, Pact (contract testing).
AWS Integration Examples:
📌 Exam Tip: Integration tests usually follow unit tests and are commonly executed in CodeBuild or Lambda-based test stages.
Purpose: Confirm that the application meets defined business and functional requirements.
Common Tools: Cucumber, Selenium, Cypress.
AWS Integration:
📌 Exam Tip: Acceptance tests are typically run before promoting a build to staging or production environments.
Purpose: Ensure correct behavior and consistency of the frontend user experience.
Common Tools: Selenium, Cypress, Puppeteer.
AWS Integration:
📌 Exam Tip: UI tests are usually executed after integration tests but prior to production deployment.
Purpose: Detect vulnerabilities in source code, dependencies, container images, and infrastructure configurations.
Common Tools: AWS CodeGuru Security, Snyk, OWASP ZAP, Trivy.
AWS Integration:
📌 Exam Tip: Security scans should be automated at multiple stages—before merging, before deployment, and continuously in production.
Purpose: Measure application performance, scalability, and resilience under heavy or unexpected load.
Common Tools: JMeter, Gatling, k6.
AWS Integration:
📌 Exam Tip: Load and stress testing is especially important before production releases and when validating Auto Scaling behavior.
AWS best practices emphasize running the right tests at the right pipeline stages to balance speed, cost, and risk.
📌 Exam Tip: AWS CodePipeline supports parallel execution of test actions, significantly reducing overall pipeline execution time.
Modern CI/CD pipelines automatically validate changes before merging code.
Common Practices:
📌 Exam Tip: Enforce IAM-based approval controls to ensure only authorized users can approve merges and deployments.
Performance testing should be repeatable, automated, and scalable.
AWS-Native Capabilities:
📌 Exam Tip: CloudWatch alarms can automatically trigger scaling actions based on performance thresholds observed during stress testing.
CI/CD systems rely on application exit codes to determine execution outcomes.
📌 Exam Tip: AWS CodeBuild and CodeDeploy use exit codes to decide whether pipeline stages succeed or fail.
Unit testing should be fully automated for every commit and build.
Example CodeBuild Configuration:
version: 0.2
phases:
build:
commands:
- mvn test
reports:
unit-test-reports:
files:
- '**/*.xml'
base-directory: 'target/surefire-reports'
Test reports can be published to Amazon CloudWatch for visibility and auditing.
📌 Exam Tip: AWS CodeBuild integrates with tools like SonarQube to enforce code coverage thresholds and quality gates.
AWS services can be dynamically invoked at different pipeline stages to support testing automation:
📌 Exam Tip: AWS Lambda is commonly used to trigger tests, evaluate results, and control pipeline flow programmatically.
This exam domain evaluates your ability to design and automate robust testing strategies within AWS CI/CD pipelines. Success depends on knowing which tests to run, when to run them, and how to automate them securely using AWS services. A strong grasp of test placement, pipeline orchestration, and monitoring is essential for answering real-world, scenario-based exam questions with confidence.