DOP-C02 SDLC Automation Practice Question
A company uses AWS CodePipeline with multiple stages: Source, Build, Test, Deploy. The Test stage runs integration tests using AWS CodeBuild. If the Test stage fails, what happens to the pipeline execution?
⚠ Common exam trap
Candidates often confuse the default behavior with optional features like automatic retries or stage skipping, assuming CodePipeline behaves like a CI/CD tool that allows failures to pass through (e.g., Jenkins with 'unstable' status) or automatically retries failed jobs.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
The pipeline execution stops and the status is set to 'Failed'.
In AWS CodePipeline, by default, if a stage (such as Test) fails, the pipeline execution immediately stops and the overall pipeline status is set to 'Failed'. This is because CodePipeline treats each stage as a sequential gate; a failure in any stage blocks progression to subsequent stages unless explicitly configured otherwise (e.g., with a 'Blocker' or 'Manual Approval' action). Option B correctly describes this default behavior.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The pipeline continues to the next stage but marks the Test stage as failed.
Why it's wrong here
This is incorrect because CodePipeline treats a failed action as a terminal error for that pipeline execution. The pipeline does not advance to the next stage while recording the failed status; all subsequent stages remain in a NotStarted state. Marking a stage as failed while continuing would also contradict the strictly sequential execution model CodePipeline enforces.
- ✓
The pipeline execution stops and the status is set to 'Failed'.
Why this is correct
This is correct. When any action in the Test stage fails, CodePipeline immediately transitions the entire pipeline execution to the Failed status, and no later stages run. The execution history preserves the failure details for inspection, but you must resolve the root cause and retry the failed action or start a new execution manually; the pipeline does not recover on its own.
- ✗
The pipeline skips the Test stage and proceeds to Deploy.
Why it's wrong here
Skipping the failed Test stage is not the default behavior. CodePipeline executes stages in a fixed order and does not bypass a stage whose action has failed; the failure aborts the remaining execution rather than jumping ahead. To skip a stage you would need to redesign the pipeline definition or introduce conditional stage transitions, but no such automatic skip exists in a default configuration.
- ✗
The pipeline automatically retries the Test stage up to three times.
Why it's wrong here
CodePipeline does not automatically retry failed actions or stages three times or any other default number. You can manually retry a failed action from the console, CLI, or AWS SDK, but that is an explicit user action; automatic retry is not a built-in default and must be designed at the action or orchestration layer. Repeated failures leave the execution in the Failed state until an operator intervenes.
Go deeper
Related to this question
About these practice questions
This DOP-C02 question is part of Courseiva's 1,298-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DOP-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DOP-C02 exam.