We have all often been hearing about the term ‘Continuous Testing’ these days. It’s yet another cool keyword for SEO in the basket of things that are designated as ‘modern software development principles’. What is it? How is it done? Is it really testing? In this blog, let’s explore the answers to all these questions.
To start with, let’s dig a bit deeper into the ‘continuous’ phenomenon. ‘Continuous’ word got famous with ‘Continuous Integration’, ‘Continuous Delivery’, and ‘Continuous Deployment’. These phrases are well established and used meaningfully in the context of software development. So, some thought, ‘Would it not be great to ride the “Continuous” wave, by adding testing also to the list of “Continuous” phrases?’ They figured that everything ‘continuous’ has to do with pipelines, and if ‘testing’ is also done in the pipeline, then why can’t be called as ‘continuous testing’.
Nice idea, but what is done in the pipeline is automated, and it is not Software Testing. Testing is a human activity assisted by automation. What is automated in the pipeline to assist testing is ‘checking’ (as worded by some experienced people in testing), and not testing. So, it may be called as ‘Continuous Checking’ as the automation suite checks a series of conditions to check if the confidence on the quality of the system under test can be qualitatively judged.
It is not ‘Continuous Testing’ because of the reason that the flow is in the pipeline. It is a misnomer. Maybe what some people mean is that testing is done on each stage or phase of software development and since DevOps is a continuous loop, it is called so, but the dangers of misunderstanding that as just as the automation in the pipeline is quite high. Automation is done heavily these days on each stage of software development, so it is quite possible to call the automated checking in the pipeline as ‘Continuous Testing’.
Hope that clarifies things a bit on the phrase used by some in the industry and some tool vendors alike. Feel free to chat with me on Software Testing Processes, testing strategies, and methodologies.