In today’s competitive and dynamic mobile environment, application developers face numerous challenges to ensuring their products are market-ready prior to launch. The difficulties begin with the multitude of available handsets and extend to the proliferation of operating platforms. Furthermore, the hundreds of carriers worldwide working on diverse local network standards increase the complexity of mobile testing.

A mere few years ago, application developers faced relatively simple choices when it came to testing their work. Today, many of those choices are no longer viable. As businesses prepare to go mobile, a reliable testing process is more vital than ever. There are four truths every application developer should keep in mind when approaching testing.

1.The traditional form of testing, which requires a physical device, will not scale to meet current market circumstances.

Over the past few years, the mobile world has gone app wild. The credit, of course, goes to Apple with its groundbreaking iPhone and successful App Store, which dominate the market with more than 10 million downloads every day. Now, operating systems (OSs) like Google’s Android are gaining popularity, enabling third-party handset manufacturers such as HTC and Motorola to create Android-based devices and compete for market share. When we consider tablets, the landscape looks even more crowded.

The diversity of devices, OSs, OS versions, and carriers makes it virtually impossible to manually test for reasonable quality standards with a sufficient range of physical mobile devices. Attempting to do so poses serious time-to-market implications, since this approach is both time-consuming and error prone, often leading to late bug discovery and considerable delays in the release of applications.

Continue on next page

For small-budget testing, this is especially problematic, since it is difficult for a test manager to provide an accurate estimation of time, cost, and resources for the project. Moreover, creating a testing lab with physical devices can be expensive, especially when new devices are regularly launched and there is a need to test applications in a multitude of live networks worldwide.

2. Emulators and simulators are useful in early-stage testing, but they can provide a false sense of application performance.

Emulators and simulators are approximations of devices that can provide a false sense that applications support all test requirements like performance, security, and fault tolerance in different geographies and networks. The software versions these devices emulate are not always up to date, nor do they regularly follow the real-life firmware versions. In addition, emulators do not offer advanced testing capabilities like automation, which can appreciably speed up the testing process and save valuable resources.

3.Remote device access enables enterprises to respond to mobile market dynamics.

Leading enterprises and Web companies are shifting away from manual testing and emulator-based testing methodologies in favor of the handset cloud, an environment that supports the remote testing, troubleshooting, and monitoring of applications on real devices over the Internet in real time and across the major global mobile networks.

The main benefits include a dramatic reduction in testing and development costs, as well as an agile application development environment that enables companies to securely and quickly respond to business needs and the extremely dynamic mobile market.

Cloud-based platforms provide real devices connected to the Web that can be used to make phone calls, send text messages, and download applications. The testing team simply chooses which device it wants from a list of hundreds of options located around the world. The team can then remotely run functional test exercises such as regression testing, functional testing, data-driven testing, security testing, monitoring, and more.

Continue on next page

Solutions of this kind are designed to meet the needs of globally distributed organizations, enabling easy collaboration between distributed teams. For instance, the people writing the test script can reside in England, those running the application tests can be located in the U.S., and the person in charge of debugging the application can be in Asia. There is no need to transfer devices from one region to another and no threat of devices getting lost in the process.

4.Automation is the key to building a powerful mobile testing machine.

Automation testing tools allow companies to mechanize tedious, repetitive test scenarios and generate reports. A quality assurance team can accomplish far more with fewer resources when it has the ability to script specific usage and test scenarios for data-driven regression and functional testing, schedule them, run them in loops, and run them across multiple devices. Tasks that previously took manual testers days to complete can be replaced by unattended execution of comprehensive automated test scripts on multiple devices.

Testing scripts can incorporate built-in functions according to device manufacturer, model, OS and version, and additional elements. The user defines the function once, and then the task becomes part of the automated testing procedure. For instance, users might automate procedures for macro recording, validation, and monitoring functions.

Functions of this kind make it possible to create simple test scripts in minutes and with minor modifications, reuse the scripts on several devices, and use them again for enhancement and approvals of mobile applications and services. Moreover, app developers use advanced test scripts to help combat the complicated submission and certification procedures of app stores.

Test automation also has the advantage of accurately documenting the same sequence of steps with each session. This is especially important for bug detection, since, in many cases, testers uncover defects just by playing around with the device and later have no idea what they did to create the bugs. The cloud’s automation tools can be used to reproduce defects and ensure overall accuracy of regression, integration, and application testing, enabling bug detection and correction early in the application development cycle.

As The Marketplace Grows, Testing Options Improve

As mobile Web usage statistics continue to skyrocket and more people start favoring their smart phones for surfing the Web, testing is becoming more complicated. Testing mobile applications can be a daunting and challenging process, both in terms of time and cost.

It begins with lab testing in the design and development process and progresses to pre-launch regression testing, functional testing, and post-launch monitoring. It is imperative throughout every stage that developers find the means to sustain quality assurance.