What is Continuous Test Engineering?
Continuous Testing Is essential for DevOps. In my book “Engineering DevOps” mybook.to/engineeringdevops “ Continuous Test Engineering is defined as a quality assessment strategy in which most tests are automated and integrated as a core and essential part of DevOps. Continuous testing is much more than simply “automating tests”.
In my DevOps consulting experience, in both enterprise and manufacturing environments, I see many value streams in which test activities such as finding and setting up test environments, test configurations, and test results interpretation are a primary source of bottlenecks. Success with DevOps requires that these bottlenecks are reduced. A thorough understanding and disciplined implementation of Continuous Testing and related recommended engineering practices is required.
Why Is Continuous Test Engineering Important to DevOps?
A comprehensive set of tests are, in aggregate, a prescription of expected behaviors for applications within the production environments. The expected behaviors are more than application features and functions. Non-functional requirements such as performance, maintainability, and reliability are essential. Continuous tests are designed to cover both functional and Non-Functional Requirements (NFRs). Capabilities needed to operate an application in each of its deployment environments are part of continuous testing.
How Is Continuous Testing Engineered for DevOps?
Continuous Test Engineering requires as many relevant tests as possible are executed as early as possible in the pipeline. Assessments are performed “continuously” on incremental product changes using a production equivalent environment (Physical and/or Virtual), which are orchestrated for each of the end-to-end pipeline stages from Dev through Integration, Pre-Prod and Production stages. Tests are selected automatically at each stage and triggered to run automatically by the toolchain prior to exiting each stage of the pipeline. Results of tests are a critical factor for deciding whether an application change is ready for promotion from one stage to the next stage in the pipeline or rejected and scheduled for remediation. The aggregate set of test results accumulated over the pipeline provide important data to decide whether a change is acceptable for release to production.
If you would have need to learn more about Continuous Test Engineering I invite you to schedule a 20 minute DevOps chat using the following link: https://calendly.com/engineeringdevops/devopschat