Defining CD
CD capabilities allow product teams to stand up new environments to test new code updates with minimal manual labor and rapidly. CD's primary goal is to turn new updates into routine and high-velocity tasks that a development team can perform on-demand.
Just as CI has a sequential sequence of steps, so does the CD process, as depicted in Figure 5.5:
The CD pipeline view depicted in the preceding diagram provides a high-level view, and similarly to the CI pipeline, it can be decomposed into a lengthier list of related activities. These activities might include the following:
- Conducting static code analysis
- Conducting unit tests
- Conducting API tests
- Staging to test environment(s)
- Parallel testing (for instance, useability/accessibility, exploratory, UI, and performance testing)
- Staging to preproduction environment
- Executing application tests (for example, acceptance, exploratory...