Continuous Testing Approach is the in-thing in the software testing world today. It is spoken about a lot in the world of CI/CD specifically on how the software testing strategy can enable collective and continuous ownership for quality.In our experience of being in the software testing business for over 15 years, we advocate that a drive to continuous testing is both a mindset and a practice level change – in short, it is a culture change. While it may have gained popularity in recent years, continuous testing approach is not really new. The tools today enable quality teams to take on this practice with ease, while the mind-set piece has been implemented as a best practice for years now, in organizations that truly understand effective software testing. With the dynamics at play in software engineering whether it is changing business needs, market and user requirements, development changes, sometimes even architectural changes along the way, focus on both functional and non-functional quality attributes, how can quality not be continuous? In the traditional days of the yester years, even when Waterfall was largely prevalent, a robust regression test suite enabled continuous testing. Testers closely worked with developers in ensuring the unit tests were also instrumental in ensuring the quality of builds that came out. Regression suites and build verification tests were automated and maintained – all of these helped bring in a continuous testing culture.
With shorter and more frequent releases in the Agile world, continuous testing has now become inevitable, rather than a nice to have feature in the overall testing strategy. Teams are now focusing on automating the testing of all user stories, improving automation numbers at the API level, to be able to bring in sustainable and scalable automation. Existing functional test scripts are also doubled up and integrated with other tools to take on non-functional tests such as security and accessibility. More time is created for exploratory testing, now that even in-Sprint automation is taken up. Bug bashes and crowd test efforts are also taken up wherever possible. Regression suites are up-to-date and maintained that they can be leveraged even by non-testers for quick executions. Core test cases are plugged into the CI/CD cycle such that as the build is complete, an initial sense of quality is immediately ascertained. All of these at an implementation level, have truly brought in continuous testing. Agile has also inculcated the continuous testing mindset on the entire product team. Those that do not embrace this mindset will soon see the product falling apart either at the implementation or user acceptance level.
The combination of continuous testing practice and mindset together makes this a culture – while this has been in existence for long, Agile has thankfully made it a mandate, not an option anymore. Those that do not embrace this mandate, fail to thrive – they just survive and that too may wither out soon. As part of the software testing fraternity, it is our responsibility to spread this mandate, ease its acceptance, in the larger interest of global digital quality.