Is Continuous Deployment incompatible with manual QA?
CD leaves room for manual approvals, but once approved, all changes should be applied automatically.I recently heard the claim that “Continuous Deployment is incompatible with manual QA.” As common as this belief/assumption is, I always challenge it.
First, my definition of “Continuous Deployment” (which the above mentioned claimant said he agreed with):
The automatic deployment to production of software once it is merged into mainline.
If we agree with this definition of Continuous Deployment, and also want to do manual QA (in particular, manual acceptance testing), we have but one option: The manual acceptance tests must happen before merging the code into mainline.
“But that’s not really Continuos Deployment!” some might say. “Ask the inventors of Continous Deployment!”
I didn’t ask them directly, but in the book Accelerate, which is co-authored by Jez Humble, who also co-authored the book Continuous Delivery, it is said on this topic:
This still leaves room for manual approvals—but once approved, all changes should be applied automatically.