Artificial Intelligence in Test Automation

Just five years ago when I was writing the abstract for my speech at Toronto Agile Testing and Automation Day conference on AI use cases in agile testing, I could hardly find any references about this topic. At the conference the topic was so fresh for all the audience to make them asking so many questions. I had to spend 20 minutes more on the stage.

In few months I started using an open source image comparison library in Java to implement my ideas in utilizing image processing to visually test user interfaces. I was hoping to replace fragile and flaky Selenium tests which are super costly in terms of maintenance. An idea which never worked out as expected before I heard about an AI testing tool provided by an offshore company.

Artificial Intelligence (AI) is expected to play a crucial role in the future of software test automation. With the increasing complexity of software systems, traditional manual testing methods, and even the automation built based on those methodologies are becoming more challenging and time-consuming. AI can help overcome these challenges by automating the testing process, reducing the time and effort required for manual testing, and increasing the efficiency and accuracy of the testing process. AI can be used to develop intelligent testing systems that can automatically detect software bugs and issues without human intervention. These systems can learn from past testing experiences, adapt to changing software environments, and improve their performance over time. This will not only save time and effort but also help identify bugs and issues that may have gone unnoticed using traditional testing methods. Moreover, AI can also be used to perform #PredictiveTesting, where the QA solution can predict potential software bugs and issues before they occur. This can help software developers to proactively fix these bugs and issues, resulting in higher quality software systems.

Photo by Tara Winstead on Pexels.com

As an example, Applitools utilizes AI-powered image processing technology to compare images and detect differences in visual user interface testing. This technology helps to quickly identify even the most subtle changes in a user interface, and can be used to quickly detect bugs, regressions, and other issues.

Applitools does not seem to be using machine learning. In the current version, the user should review test results and validate changes categorizing them into bugs and expected updates, however the software saves this and uses exact same verifications on the next runs of the screenshots, it still does not learn from the user to improve the future experiences on new web pages or future features of the web application. Adding machine learning on top of image processing can take this to the next level.

AI has the potential to revolutionize the software testing process, making it faster, more efficient, and more effective, and it is likely to play an important role in shaping the future of software test automation.

Leave a comment