AI and QA: how they work together, pros and cons

January 2, 2019

qaai

The term "artificial intelligence" typically refers to a machine that mimics cognitive human functions, such as "learning" and "problem-solving". But AI and Machine Learning are so much more than what we see in movies; they’re a part of our everyday lives. For example, we can find them:

  • On our phones when we use voice commands and virtual personal assistants;
  • In our online shopping baskets with all those recommendations, ads, YouTube, and social media;
  • When commuting using AI-powered prediction apps and ridesharing apps;
  • In self-driving cars; and
  • The most famous one - AlphaGo

The truth is, whether we like it or not, AI and machine learning are already affecting our daily lives.

AI for QA software testing

A lot of new technologies are used in the software testing world nowadays, and AI and Machine Learning are definitely two of the most exciting ones – at least for me – because when AI is applied, it does most of the testing. Pretty convenient, right? They automatically run way more tests than a human could ever supervise, and they handle changes for the code and UI that originally had to be managed by QA professionals, such as adding fields, changing the inputs or anticipating outputs.
Some other software “testing” areas in which AI and Machine learning can be used are:

  • Visual testing and monitoring – try Applitools
  • Performing regression testing – my favorites are Test.ai, Mabl, and Retest
  • Performing functional testing – take a look at Functionize and SeaLights
  • Authoring, execution, and maintenance of automated tests with Machine Learning – definitely use Testim.io
  • Generating test cases to increase coverage – try Appvance

If you’re already thinking,” Ok, cool. I’m ready to add AI and Machine Learning to my software testing process,” you might want to consider these “pros and cons” first.

Pros

  • You’ll have better quality and reliability. AI applications can learn continuously and can generate and optimize test cases, prioritize testing and automation, enhance UI testing and reduce tedious analysis tasks.
  • AI can increase the testing coverage without adding extra workload to the testing team for the same price. A good example is Appvance; which “creates 1000’s of regression tests in minutes.”
  • It provides quick feedback, which means saving time and money. For example: as per Applitools’s customers story – “Cuts Weekly Testing Time From 30 Hours to 2”, “Reducing Release Time By 75%”.
  • There’s an opportunity to integrate AI with automation, which means crawling sites more naturally rather than following the same script over and over again.

Cons

  • Lack of intervention due to judgment. For example, during Sydney’s 2014 hostage crisis, people tried to use Uber to help them get out of the area. However, the software displayed the price four times its standard rate based on the demand, so you can see how the algorithm had no consideration of the prevailing crisis.
  • Machine learning needs lots of training data, which translates into lots of actual human work.

Final thoughts

Throughout my career, I’ve been a witness of how using AI in the QA process makes life easier for QAs (and the team project, of course). Thanks to AI, we can understand customers’ needs better and react faster than ever before.  

A big fear for most of us human QAs is that eventually, AI could replace us, but the truth is that AI assists will not replace our jobs. Human intervention will still be needed in the entire software development lifecycle.  That's why we need to think about better ways of using AI tools in our processes which is the real challenge! – And as we keep doing it, I firmly believe that together, we can make life easier and better.

Back to Ideas ×