1
$\begingroup$

How can Artificial Intelligence be applied to software testing?

$\endgroup$
  • $\begingroup$ What kind of software are you trying to test for,is it a space shuttle communication software?Be specific and not too broad.However,hope you know what AI is about! $\endgroup$ – quintumnia Mar 17 '17 at 9:53
  • $\begingroup$ Nope its a Retail Merchandise Web Application $\endgroup$ – Saran3g Mar 17 '17 at 9:54
  • $\begingroup$ Well,hand crafted testing is tirelessly and time wastage, but AI approach for instance let me take a bot well designed can analyze performance and track the thousand bugs in your code and execute with in few minutes.And also suggest where the developer[you] to focus on than spending hrs in thousand lines of code. $\endgroup$ – quintumnia Mar 17 '17 at 10:04
  • $\begingroup$ The Udacity Course(udacity.com/course/software-testing--cs258) covers some techniques near the end of the playlist. $\endgroup$ – Souradeep Nanda Apr 25 '17 at 14:10
1
$\begingroup$

I have been in the software testing industry for over 11 years now and I can say for sure that there are different ways people are using AI for software testing. This is especially true in the area of automated testing tools. Different vendors have been trying to tackle some of the common problems in test automation using AI. Some of them are-

Testim.io

It uses machine learning for the authoring, execution and maintenance of automated tests. It focuses on functional testing, end-to-end testing and UI testing. The more tests you run the more smarter the tool becomes to increase the stability of your test suites. It is not a completely code-less tool; you can use JavaScript and HTML to write complex programming logic (if needed) for your applications.

Appvance

Appvance uses AI to generate test cases based on user behavior but is not a fully AI based tool like Testim.io

Test.ai

Test.ai uses artificial intelligence to perform regression testing. It is helpful to get performance metrics on your app. It is more of an app monitoring tool than functional testing tool from my point of view

Functionize

Functionize used machine learning for functional testing. It is very similar to other tools in the market in terms of its capabilities

The above are some of the popular tools out there in the market.

The trend seems to be going in the positive direction in terms of vendors trying to make testing more stable, simpler, smarter and getting everyone in the team involved in testing including non-technical people.

It will be just a matter of time that more solutions come up for software testing using AI

-Raj

$\endgroup$
3
$\begingroup$

In large software with many actions and possible flows like web applications, enterprise software, etc, it is really hard and time taking to test out all possible scenarios via traditional approach. So, building a machine learning model is an interesting approach to solving this. A reinforcement learning system with an end goal to crash or make the software unresponsive can be tried.

There is research being done on this idea. You can take read this research paper which explores Reinforcement Learning as an approach to automated GUI robustness testing. Also, some companies like Appdiff trying to incorporate AI in software testing with mobile apps in context, but similar thinking can be reasonably extended to web apps.

$\endgroup$
1
$\begingroup$

An interesting thought is to use the software usage pattern to auto learn the tests to be conducted for future iterations of the software.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.