The processes surrounding mobile app development have rapidly evolved in recent years. Practices like Mobile DevOps and CI/CD establish the infrastructure needed to speed up app development. However, mobile app testing hasn’t evolved as much to keep up with the speed of other elements 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) come into the picture. In this post, we’ll explore how we can use AI/ML tools in our mobile application development workflow. One specific tool we’re going to focus on here is Bitbar’s new AI Testbot.
Bitbar launched its new AI Testbot in early September of this year, claiming it to be the world’s largest AI-driven mobile app testing solution. In essence, AI Testbot was built to help developers and “IT organizations scale up mobile testing efficiency and maximize quality assurance efforts with less investment in coding and hiring” (you can read the full announcement about AI Testbot here).
Why Use AI in Mobile Testing
Before we dive into how AI works for mobile app testing, let’s take a look at a couple scenarios where AI-based testing tools could help in app testing. As mentioned earlier, mobile testing in the larger DevOps and CI/CD processes is difficult, so we need something that’s a codeless and painless solution. On top of this, there are other scenarios where AI can help in mobile application testing efforts. Let’s consider a few.
Effortless Mobile Test Planning
At the moment, a significant chunk of a mobile QA engineer’s time goes into planning and thinking of test scenarios that will ensure enough confidence to release an app. This process needs to be repeated for test planning for every app and even every new release.
AI-powered testing tools might help us analyze our app by crawling through each screen, generating and executing some test scenarios for us. This could save a lot of time planning and preparing the test scenarios for the app.
Codeless Mobile Test Automation
There are awesome open source test frameworks for automating iOS and Android apps using defined scripts. Good examples of these tools are XCUITest for iOS and Expresso for Android. There’s 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, skill, and a lot of effort. The AI-based tools can do this 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 mobile apps that AI might not able to do with ease. This will help organizations speed up their releases with quality testing—with both AI-powered testing bots and human intelligence tests. The benefits will come both in the speed of production and final quality of the app.
Role Of AI In Existing Mobile Testing
Mobile testing involves various tasks like manual testing, scripted automated testing, and non-functional testing. AI testing can add value to existing testing efforts by auto-exploring apps on real devices to make sure all the existing functionality and user flow works as expected.
AI testing can also help identify any new bugs or issues introduced while exploring the app. QA teams can use these AI testing tools to supplement their normal testing efforts, helping these teams get the best test coverage in limited time and with greater accuracy.
Currently, there are a few AI/ML-based mobile testing tools available on the market: testim.io, Mabl, Functionize, and Appvance for web-based testing, and test.ai for mobile testing. Applitools uses AI for visual regression testing.
Along with that, there’s Bitbar AI Testbot, which we mentioned earlier and will be using in the next section to test mobile apps using AI. While all of these tools are likely suitable, I chose AI Testbot for this post because it seemed easy and intuitive to configure and use, so it became my first choice for a trial run.
Using Bitbar AI Testbot For AI-Driven Mobile App Testing
We can use AI Testbot to perform quick sanity and health checks of mobile apps. Once you access the Bitbar Cloud platform, you’ll see an option for AI Testbot and 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’ll see that AI Testbot has visited the most common paths in your apps and checked to see if there are any issues.
At the end of this AI-based testing process for your mobile app, you’ll see the detailed report on the Bitbar dashboard. Something like this:
If there are any failures, AI Testbot will report those in the test reports along with detailed information about the failure.
With AI-based tools like AI Testbot, we can perform basic sanity checks to increase confidence, without any hardcore scripted automated testing setup. AI-based tools can perform automated, codeless testing for us. This wouldn’t replace the human checks required for exploratory and risk-based testing, but it could add 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. I’d love to hear about your experiences using AI Testbot. Share in the comments below.