Skip to content
QA Knowledge Hub

CI vs continuous delivery vs continuous deployment

Updated 2026-11-13 · 3 min read

Continuous integration merges and tests every change automatically. Continuous delivery keeps every passing change ready to release, with a person deciding when. Continuous deployment releases every passing change to production automatically. The only difference between the last two is the manual approval.

The three terms are often mixed up. The word "CD" is the cause: it can mean delivery or deployment, and they are different.

The difference in one table

Continuous integrationContinuous deliveryContinuous deployment
What it meansDevelopers merge small changes often; every merge is built and tested automaticallyEvery change that passes is automatically prepared and ready to release at any timeEvery change that passes is released to production automatically
Who presses the release buttonNot applicableA person (or a scheduled decision)Nobody: it happens by itself
GoalFind integration problems within minutesMake releases routine and low riskRemove the delay between finishing a change and users getting it
NeedsA build and a fast automated test suiteAutomated deployment to a production-like environment, plus release checksStrong automated tests, monitoring and an automatic or very fast rollback
Tester's roleFast, reliable automated checks on every changeMaintain the release checks and the sign-off evidenceOwn the quality gates, because they are the only gate

An example pipeline

  1. A developer opens a pull request. CI builds it and runs linting, unit tests, API tests and a small browser smoke set. Red means no merge.
  2. The change merges to main. CI runs again on the merged code.
  3. The pipeline deploys to a staging environment and runs the fuller regression and checks.
  4. Delivery stops here: the release is ready, and a person (the product owner, release manager) approves it, perhaps on a fixed day.
  5. In deployment, step 4 does not exist: if step 3 passes, the pipeline deploys to production, runs smoke tests, watches the monitoring, and rolls back by itself if error rates jump.

Example

A team merges a fix at 11:00. With CI they know by 11:10 that it works with everyone else's changes. With continuous delivery the fix is in a staging build that evening, and the product owner releases it on Thursday as planned. With continuous deployment it is in production at 11:40 and users have it before lunch.

How to answer in an interview

"Continuous integration means merging often with an automated build and tests on every change. Continuous delivery means every change that passes is always ready to release, but a person decides when. Continuous deployment goes one step further and releases every passing change automatically. The difference between the last two is the manual approval." Then add the tester's point: "The more automatic it is, the more the quality of the automated checks matters, because they become the only gate."

Likely follow-up: Which would you choose for a banking application? Usually continuous delivery with a manual approval and a change-control record, because of regulation and risk. Continuous deployment suits products where a fast rollback is cheap and monitoring is strong.

See the full set of questions in the CI/CD interview questions, and build a pipeline yourself with the GitHub Actions tutorial.

Quick answers

What does CD stand for?

Either continuous delivery or continuous deployment. When someone says CI/CD, ask which they mean: the difference is whether a person approves the release to production.

Can a team do continuous deployment without good automated tests?

Not safely. Releasing every passing change automatically means the tests and checks are the only gate, so the automated suite, monitoring and a fast rollback must be trustworthy.

Want a project you can show in interviews?

The portfolio project kit walks you through testing a deliberately buggy app with Selenium or Playwright and API tests, then explaining it. The app itself is free.