Quality AssuranceQuality Assurance has always been the Achilles Heel of application development. Developers don’t like to test. This gave rise to the QA Department, which is responsible for finding and publishing the defects in developers’ work. This naturally set up a contentious relationship between developers and testers, who often report to different people with different measures of success. The process of building, testing, finding defects and remediating, and then repeating… is slow and tedious.
Imagine now a new paradigm where developers test their own work, according to their own schedule. This is not the traditional running of a handful of functional test scripts, however. Continuous testing relies heavily on automation, and the integration of testing tools into the DevOps architecture. As code is checked in, it is automatically scanned for vulnerabilities. Test scripts can be automatically executed to confirm there has been no deprecation of functionality. Load tests can be executed to confirm the scalability and performance of the new code. Continuous testing enables you to finally “shift left,” where a defect found early in the development lifecycle costs significantly less than if that defect is discovered in production.