Fortunately, we have had solid tools for automating software testing for a long time. Unit tests, module tests, API tests, UI tests, and even end-to-end tests have been available for years. Unfortunately, most projects have not used them extensively because they are expensive to create and even more expensive to maintain. Test suites age like milk when nobody is watching.
This is where AI can actually help in a very practical way.
AI can create good baseline tests that ensure previously tested functionality stays the same, or at least tells us loudly when it is about to break. That is arguably the most valuable contribution AI can make to quality assurance. Handling regression so humans do not spend their days confirming that yesterday’s code still works today.
Over the years, many test engineers have told me that 80 to 90 percent of their work is simply making sure existing functionality does not break when something new is added. If AI can take over creating and maintaining tests for already tested areas, humans can focus on validating new functionality. They can test it properly, think critically about edge cases, and then let AI turn those learnings into regression tests for the future.
Of course, AI can help with more than just regression testing. It can verify that new features are documented, check that API documentation is updated, try new APIs based on that documentation, and even generate end-to-end test scenarios from human-written test guides. And so much more...
So is it possible to automate quality assurance enough that AI-enhanced development does not overwhelm it? I think so, and it should be fairly straightforward. Let AI handle the repetitive and easily verifiable parts. Let humans focus on the areas that require communication, judgment, and deeper thinking.