Mobile phones are designed for the customers who want to do everything with a single device through quick access to data, alerts, business processes, transactions and reports. Mobile applications have nearly replaced web applications for consumers.
Testing of mobile applications is different and more complex than testing traditional desktop and web applications. Mobile applications need to be tested on a variety of software platforms, versions and under different network connectivity conditions.
Unlike the desktop world, where PCs are established as standardized reference hardware, the wide variety of device form factors (e.g. phones and tablets of various screen size and software platform) adds another layer of complexity in testing mobile apps. Device diversity is an especially acute problem for Android devices – even the official 1 Android device gallery includes over 60 devices of various screen sizes, resolutions and form factors.
Device and platform diversity, short release cycles, lack of mature testing tools and the variety of network connectivity options result in frequent cost overruns and missed deadlines in today’s mobile application testing environment. Moreover, the rapid pace of mobile OS updates, frequent introduction of new devices, new features of mobile apps and customer expectation of quick upgrades require #Continuous Integration Methodology to be deployed & hence #DevOps and Continuous Testing.
Mobile Test Strategy
A comprehensive mobile test strategy which includes device and network infrastructure, optimized selection of target devices, and an effective combination of manual and automation tools to cover both #Functional and #Non-Functional testing has become essential for getting mobile applications to market on time and within budget.
Main Elements of Mobile Test Strategy
- Target Device Selection – Create an optimal mix of simulator and physical device testing on different models to maximize test coverage.
- Test Automation – Select an effective test automation tool and maximize the use of automation to reduce the cost of functional and regression testing.
- Network Environment – Consider testing primarily on WiFi networks and network simulation tools to simulate cellular connectivity and various network conditions.
- Types of Testing – Consider different types of testing required (functional, regression, cross platform, usability, performance, security, and compliance).
Mobile Test Automation
Automated testing is a highly effective approach to mobile application Quality Assurance that can provide significant business returns, provided it is implemented by using the right tools and architecture, factoring in cross-platform challenges. However, automation requires a significant initial investment (in a test tool as well as scripting) and ROI is realized when the same automated test is executed multiple times on different devices/OS with negligible incremental cost.
The key points to be considered during the selection of Mobile Test Automation tool:
- Provide low cost solutions, avoid high license fees or operational expenses
- Support test case execution on multiple mobile device platforms
- Modular & easily up-gradable to keep up the pace with new trends in mobile market & support new iOS/Android/other OS versions.
- Integrate/inter-operate with other test management/bug tracking/build management systems
- Accessible by non-technical Test SMEs to maintain good blend of technical & Subject matter knowledge within test team
- Test data management should be separated from automation scripts so that test data sets can be changed with little overhead
- Ability to test a specific chunk of suite as well as complete suite.
- Support batch execution
- Customized test reporting
Mobile Automation is still in its nascent stage with major scope to improvise. The principles and success factors of test automation for mobile applications are different from those traditionally applied to conventional applications. Understanding of the business dimension, selection and implementation of right automation test tools and ability to manoeuvre technology challenges are the success factors for building and executing a robust Mobile Test Automation Strategy.