Continuous Integration and Testing Flashcards
7 cards from real CAD practice questions. Tap to flip, then mark Knew It or Still Learning โ missed cards come back until you master them.
Read the first 7 Continuous Integration and Testing flashcards as text
What is the 'test pyramid' concept in Agile testing?
Answer: A model recommending many fast unit tests at the base, fewer integration tests in the middle, and minimal UI/E2E tests at the top
The test pyramid guides teams to invest in fast, cheap unit tests and avoid over-relying on slow, brittle end-to-end tests.
In a CI environment, what is the purpose of a 'canary release'?
Answer: Releasing new code to a small subset of users to detect issues before full rollout
Canary releases limit blast radius by exposing a small percentage of traffic to new code, enabling real-world validation with low risk.
Which CI anti-pattern occurs when developers avoid committing code to prevent breaking the build?
Answer: Commit avoidance or 'CI theater'
When fear of breaking the build reduces commit frequency, the team loses CI's core benefit of rapid, small integrations.
What is 'mutation testing' used for in software quality assurance?
Answer: Evaluating the effectiveness of test suites by introducing small code faults and checking if tests catch them
Mutation testing reveals gaps in test coverage by checking whether existing tests detect artificially introduced defects (mutants).
In CI, what is a 'deployment pipeline'?
Answer: An automated sequence of stages (build, test, deploy) that code must pass to reach production
The deployment pipeline automates every step from commit to production, providing visibility and enforcing quality gates at each stage.
What is the key difference between Continuous Delivery and Continuous Deployment?
Answer: Continuous Delivery requires manual approval before production; Continuous Deployment releases automatically
Continuous Delivery ensures code is always release-ready but requires a human decision to deploy; Continuous Deployment removes that gate.
Why is it important to test database migrations as part of the CI pipeline?
Answer: To ensure schema changes integrate correctly with the application and don't break existing functionality
Untested migrations can silently break application behavior or cause data loss when deployed, so CI should validate them against realistic data.