Mobile Test Automation: Need & Availability
Why is it necessary to Automate Testing on Mobile
There has been an explosion in Mobile Technology over the last two decades. We moved
on from simple voice (1G) to voice-text (2G) to voice-text-gprs-edge (2.5G) to voice-text-data-
external app access (3G). We will soon be headed to 4G, which claims to support 10 times higher
We have also seen the rise of the Smart-Phone and other mobile devices that support email
clients, calendars, full web browsing, social networking apps, camera’s with easy sharing
integration, video players such as youtube, maps, office apps, games etc.
With the Smart-Phone revolution upon us and the multitude of applications being
released on a daily basis there is an increasing need for tools and automation to test all
of these mobile applications.
Newer versions of apps are released every other day. How to cover their test cycles in
maximum devices/platforms manually?
Any changes in your app, needs testing of the whole app again. One cannot do it
How to ensure that your app will sustain in such enormous App Stores/Markets.
Currently available Solutions and their feature comparison
Android IOS Windows
Y - Y Y - - - Library
Y Y Y Y Both
- Y - Y
- - Library
Y - - Y Y - - Library
Y - Y Y Y - - Tool
Y Y Y Y Y - - Tool
SeeTest Paid Y Y Y Y Y Y Y Tool
Paid Y - Y Y Y Y Y Tool
Y Y Y Y Tool
mAutomate Paid Y Y Y Y Y - -
Ranorex Paid Y Y Y Y Y - - Tool
* I couldn’t do an effective comparison for PerfectoMobile as I couldn’t get my hands on the software.
Points to ponder upon before choosing an Automation Tool
• There is some difference between emulators & actual devices, so we may need to test on
• What should be the Object Recognition technique: Property Based Approach or Image
Comparison Based Approach?
• A feature may be working on a device but may fail on another, so the more devices we test
upon, the better is our stability.
• No single tool can support all functionalities. We may need one functionality of a tool and
another functionality of another.
• What parts of the app can be tested through automation?
• Platform agnostic tools may be of much help if the behavior of your app is same over
• Can we use multiple tools for handling complex scenarios?
What should be the optimum solution?
• An IDE which supports both PropertyBasedApproach as well as ImageBasedApproach.
• Keyword Based approach: To avoid scripting learning curve.
• Extensibility: Multi tool plugin support.
• Avoid need of Source Code: Because in the end you will be publishing the App not the
Agentified-App (App + TestAgent)
• On demand Mobile Cloud Support: You need not buy each & every device to test a single
• Multi platform support: A TestScenario may be spread across Web, Mobile & Desktop App.
A sample Scenario you would like to test is: Create a user through Web Interface, Login
through the Mobile app, do some testing and use the desktop utility for expiring all open
sessions of that particular user.
• Component Reusability, Data-Sheet support, Multi lingual Object support.
• Meaning full Reports: Must contain the execution environment details, screenshots.
How much of the above questions do OpKey answers? Which Object recognition mechanism
does OpKey supports, Object Based Approach or Image Based Approach? To know more about
it, keep watching this section!