Automated testing is a process in which developer code is run through testing tools fed with testing scripts that run each test. There is no human intervention in the automated testing process, other than writing the test scripts.
Continuous Testing is a process where the execution of tests is run through the testing tools automatically following code integration. As before, the testing tools are pre-loaded with the testing scripts. There is no human intervention in Continuous Testing as well, other than with the script development.
So, what is the difference between Automated Testing and Continuous Testing? In Automation Testing, the code is integrated with the mainline, then automation test scripts are developed, and the binaries are tested against these scripts automatically using automation test suites.
In Continuous Testing, the test scripts are written before the coding begins. So, when the code is integrated, the automation tests are automatically run one after another – hence the term Continuous Testing. Development methodologies such as TDD and BDD gel well with the DevOps framework as they are one of the enablers for Continuous Testing.
The advantage of Continuous Testing over Automation Testing is that once code is checked into the source code repository, the process to build and validate begins, and the feedback is obtained rapidly. There is no gap in the process where the integration, testing, and feedback mechanism await human intervention.
The difference between automated testing and Continuous Testing
Testing the Continuous Way
Did you know that traditionally testing has been considered as a bottleneck in the software development lifecycle? Developers complete the coding activity and hand it over to testing folks. While the testers are busy at what they do best, developers often have to await feedback. DevOps came in with a single objective of cutting down the software delivery timeline to deliver a better-quality software. How can we cut down the development time and still achieve quality? The answer to this question is Continuous Testing. It cuts down the feedback cycle significantly and this benefits in avoiding rewriting pieces of code.
Developers and testers have often asked whether writing all the test scripts before you begin to code is feasible and practical. The answer is yes, this is the essence to achieving Continuous Delivery and Continuous Deployment.
There are a number of organizations, such as Amazon and Netflix, who are able to deploy multiple times a day. They keep their deployments small, apply Continuous Testing, and deliver unparalleled results. In this age, we must move away from automated testing into Continuous Testing. This is the future and survival depends on how quickly organizations are able to transform.