Mobile application development has rapidly grown in recent years. The practices like Mobile DevOps and CI/CD set up the infrastructure to speed up app development. However, mobile app testing doesn’t evolve much to keep up with the speed of app development. It’s true that there are multiple automated testing tools out there that allow us to keep up with the pace of development, but we need something more to do all the things without any scripts and with minimum cost. This is where Artificial Intelligence and Machine learning (AI/ML) comes into the picture. In this post, we will explore how we can use AI/ML tools in our mobile application development workflow.
Why AI in the Mobile Testing
Before we dive into what AI is for mobile app testing, let’s see what scenarios could be where AI based testing tools can help in the mobile app testing. As mentioned earlier mobile testing in the pace of DevOps and CI/CD is hard so we need something that’s a codeless and painless solution for the mobile app testing. On top of this, there are other scenarios where AI can help in the mobile application testing efforts.
Effortless Mobile Test Planning
At the moment the significant time of the mobile QA engineer goes into the planning and thinking of the test scenarios which will give enough confidence to release the app. This process needs to be repeated for the test planning for every app and even every new release. The AI-powered testing tools might help to analyze our app by crawling through each screen, generate and execute some test scenarios for us. This could save a lot of time planning and preparing the test scenarios for the app. Obviously, we can add more scenarios later but AI-based tools can give us a good starting point.
Codeless Mobile Test Automation
There are awesome open source test frameworks for automating iOS and Android apps using defined scripts. The good examples of these tools are XCUITest for iOS and Espresso for Android. There is no doubt that these tools will add a lot of controlled benefits in the application development process. However, setting up the framework and writing the scripts to automate mobile testing requires time, skills and efforts. The AI-based tools can do that job easier by automating common scenarios without the need to write any code.
Allowing AI-based tools to do common testing tasks will free up QA time to do more sensible and exploratory tests on the mobile apps that AI might not able to do with ease. This will help organizations to speed up the releases with quality testing covered with the help of AI-powered testing bots and human intelligence test. The benefits will come both in the speed and quality of the app.
Role of AI in Existing Mobile Testing
The mobile testing involves various tasks like manual testing, scripted automated testing, and non-functional testing. The AI testing can add value in the existing testing effort by auto exploring apps on the real devices to make sure all the existing functionality and user flow works as normal. AI testing can also help if there are any new bugs or issues introduced while exploring the app. The QA teams can use AI testing tools to supplement their testing efforts in addition to normal mobile testing tasks like manual, exploratory or scripted automation testing. Having AI-powered testing tools in the existing mobile testing effort will help QA to get the greatest test coverage in the limited time with greater accuracy.
Currently, there are few AI/ML-based mobile testing tools available in the market which are testim.io, Mabl, Functionize, Appvance for web-based testing while test.ai for the mobile testing. The Applitools uses AI for visual regression testing. Along with that, Bitbar announced the world’s largest AI driven app testing solution also known as AI Testbot to test mobile apps using Artificial Intelligence. We will cover how to test mobile apps using AI Testbot.
Using Bitbar AI Testbot for AI-Driven Mobile App Testing
Bitbar presents AI Testbot which can be used to perform the quick sanity and health check of mobile apps. Once you get access to the Bitbar Cloud platform, you will see an option for AI Testbot, you can launch a new AI Testbot run to test your own mobile apps.
In the next step, follow the steps Select OS type -> Select AI Testbot -> Select Application file -> Give username and password if needed -> Start test run.
AI Testbot will perform basic checks on the selected devices and report the results back to you. At the end of the test run, we will see that AI Testbot has visited the most common paths in your apps and checked if there are any issues. In our case, it is passed without any issues.
We can dig into the reports of the individual device and check what steps and actions have been performed by the AI Testbot. There are screen recording and loads of screenshots attached in the report with analytics and some output logs. We can also see the CPU usage and Memory usage information in the results. The sample output from our test looks like this:
Now that, we have successfully finished some basics checks on our Android app using the AI Testbot feature of Bitbar without having to do any setup or configuration. The AI Testbot feature from Bitbar currently supports Android and iOS support is on the way.
With AI-based tools like AI Testbot, we can perform the basic sanity checks to get confidence without any hardcore scripted automated testing setup. AI-based tools can perform some automated, codeless testing for us it wouldn’t replace the human checks that are required for the exploratory and risk-based testing but it adds a lot of business value by performing basic checks regularly for mobile apps. You can try Bitbar’s AI Testbot on your apps and see how it performs. Let me know your experiences using AI Testbot. Share in the comments below.