This article has been adapted from our blog: Run Applitools Visual Tests on Genymotion Cloud Virtual Devices
As more and more mobile QA teams are getting rid of manual testing, the need for automated testing is growing. Most teams focus their test automation on Unit, API, Integration, and Functional UI. But an important aspect of your mobile automation testing is Visual testing.
Visual UI Testing is critical to catching unintended visual bugs while updating UI components. Visual bugs are difficult to find using functional tests, which focus on identifying bugs in your workflow. If you haven’t tried visual testing before, you’ll be surprised how many visual bugs you may find with an automated visual testing tool like Applitools. And don’t even think of manually finding visual bugs as it is painfully difficult to compare hundreds of images of your mobile app.
Applitools provides AI-powered visual regression testing of applications and allows you to test cross-platform easily to identify visual bugs. It focuses on the visual aspects of your app and plays a major role in exposing the visual differences between baseline snapshots and both current and future snapshots. Its AI powered end-to-end visual testing and monitoring solution helps developers, test automation engineers, QA professionals, and DevOps teams automatically run visual tests at scale across every app, browser, OS, and screen size.
Applitools allows developers to verify that each UI element in each page appears in the right color, shape, position, and size and that it does not overlap or hide other UI elements.
What are visual bugs?
I’m sure you’ve all played spot-the-difference games in your childhood, and felt like a genius when you spotted all the differences in under a minute. Those games are fun!
Well, Applitools’ visual AI does the same job of finding those visual differences (or bugs) in your mobile or web apps at a much-accelerated speed. See for yourself here.
Here are some examples of visual bugs:
Search box blocking shopping cart on ThredUp Website (Source: Applitools)
Fragmented Android Market
Due to the fragmentation of Android devices market, Android apps may visually behave differently on different devices and therefore, visual testing becomes even more critical for Android apps. With time-to-market becoming an important factor in improving customer experience, there is even more pressure on the QA teams to run these tests across a vast number of devices in the easiest way possible.
Testing mobile apps on physical devices or using device farms is cumbersome, slow and expensive to manage and is often a deterrent to scaling their tests on as many devices as possible.
To solve that problem, Applitools teamed up with Genymotion to making parallel visual testing far easier for QA engineers.
Genymotion SaaS (Cloud) is a powerful Android emulator on the cloud to run your Appium tests and reduce app’s time-to-market. With flexible per-minute pricing, engineers have the ability to manage their testing costs by scaling up or down the number of devices. With Genymotion SaaS, testers at any level can sign up here and try out our solution on-demand, without a contract.
Applitools and Genymotion SaaS
Our teams decided to work together with Applitools to solve this common problem that users were facing: Test the visual portions of an app on all the Android devices at the same time.
Engineers can parallelize their visual UI tests using Applitools and Appium across all Android Genymotion SaaS virtual devices at once. This allows them to detect bugs as soon as possible and spend less time on test runs.
QA engineers appreciate the ability to test their mobile applications on a large number of Android devices and screen sizes which is hard to scale with actual physical devices. Using Genymotion SaaS virtual devices will speed up their parallel tests even faster. The collaboration between Applitools and Genymotion SaaS allows for faster visual comparison on more configurations while also seeing the previous builds.
This article will show you the steps to take in order to parallelize your Appium tests to perform visual testing and run those tests across a number of Android devices on Genymotion SaaS.
Running Appium visual tests using Applitools on Genymotion SaaS
- Write your Appium tests using the Applitools SDK for Appium for taking screenshots for visual testing. You’ll use the udid capability in your tests to define on which Genymotion device you’ll run the tests. This can be known in advance as for Genymotion devices, adb serial is localhost:XXXXX where XXXXX is a port number that can be defined in advance (cf gmsaas below)
- Launch Genymotion SaaS devices via gmsaas command line. See gmsaas CLI user guide.
- Run visual tests across Genymotion SaaS devices using Appium
For in-depth information on setting up Applitools and Genymotion SaaS devices, and running those tests, we recommend you to read this step-by-step tutorial.
We’ve also put together video tutorials:
More about Genymotion and Applitools
Find out more about Applitools. You can read their thoughts on using Genymotion, Appium & Applitools to test Android apps, request a demo, sign up for a free account, and view their Appium tutorial.