In this chapter, we have taken a look at various testing strategies for automating the testing and verification process. Creating automated tests helps us to control the technical debt created throughout the development life cycle and keep the source code in check, hence increasing the quality of the code and the pipeline. As you have seen, some of these tests are as simple as unit tests that are implemented at the beginning of the application life cycle and executed almost at every code checkpoint, while some are elaborate, such as the integration and coded UI tests, which are generally written at end of the development stage and executed only at certain checkpoints (that is, nightly builds or pre-release checks). Regardless, the goal should always be to create a certifiable pipeline for code rather than to create code for certification.
In the upcoming chapters, we will...