Challenges in Testing of mobile applications

CIOL Bureau
Updated On
New Update

BANGALORE, INDIA: The way we access the net has changed drastically in the past few years. Today a person can manage his documents using Google docs, find the shortest route to that important client meeting using Ovi Maps, sift through e-mails on his Yahoo account using his Opera mini browser, check out what his friends are up to using his Facebook widget, chat with his friends using Meebo; without even being near to his laptop.


Welcome to the world of Mobile web. Mobile applications today have enabled us to literally have all the information we need at our fingertips. These applications are now integrating with our banks, hospitals and workplaces and are set to become an inseparable part of our lives.

According to Gartner, the worldwide mobile applications market is currently estimated to be around $6.2 billion. In 2013, this market is expected to be around $21.6 billion. It is nobody’s guess that this market has huge untapped potential. For the companies that are involved in creating and testing mobile-based applications, this is the tipping point.

However mobile applications need to be carefully developed and tested, as unlike a computer, the safety infrastructure of a mobile device may not be comparatively impenetrable. Recent doubts regarding Citibank’s Mobile Banking Application’s security are a case in point. Citibank released its mobile application for iPhone in March 2009, using which customers could keep a track of their account. In July 2010, Citibank released an updated version and asked the users to update to this as the earlier version had a security flaw that rendered critical account information vulnerable to attacks.


For developing a deeper understanding of how mobile applications need to be tested, we need to appreciate the fact that mobile devices is a new market altogether and has its own dedicated concerns. These concerns arise from a host of unique features that make mobile device market different from PC’s. These features are:

Multiplicity of mobile platforms

Multiplicity of mobile platforms is one of the biggest challenges that the industry faces today. The handset manufacturers are using vastly different platforms like Symbian, Memo, Bada, Android, J2ME, Blackberry and Brew. An application needs to be tested on all of them to ensure that it works for everyone. If a company plans to test for only a few operating platforms, it runs the risk of locking out potential customers who might be using other platforms.



Multiplicity of Cell phone Models

Every handset maker offers hundreds of models to its customers. These models have different screen sizes, hardware configurations and image rendering capabilities.  An exhaustive test conducted across these devices is the only way to ensure that an application works on all cell phones. Otherwise, your application would become like one of those mobile anti-viruses that take up so much of memory that a user cannot do anything else, thus defeating the very purpose they were installed for, to let the user surf the net safely. However, an exhaustive test can prove to be a very expensive and time-consuming process. Testing process should focus on careful selection of the sample and ensure that an application delivers optimum performance for all desired configurations of hardware.


Different Carriers

There are over 400 mobile operators across the world offering GSM, CDMA and some lesser-known local networking standards. Each of these operators, to steer clear of the technicalities, does things in a different way. There are a host of issues involved in enabling an application for use on different carriers. Each network provider has implemented systems that behave slightly differently from the other as they use technology from different vendors. Therefore, an Airtel network is different from a Vodafone one and both require tackling slightly different challenges. Also, network providers insert web proxies to dictate the transfer of information on their system. ‘Walled garden’ approach, where users are allowed to access only a few pre decided websites is an example of data control by the operators. Another technique worth a mention here is trans-coding. Transcoding scales down fixed web content to ensure it fits the mobile phone screens. With different carrier requirements, testing needs to focus on all target carriers and ensure that the application functions on all of them.



Location is another major constraint in testing mobile applications. An application should ensure that it does not eat bandwith or fails to function when signals are low. For e.g. with A-GPS devices, that use cell phone tower triangulation to identify your location, sometimes low signals result in a loss of data. Suddenly a passenger is left wondering where to turn next. Therefore, these applications need to be tested for their capability to work with low signals also. In fact, to completely test a network, the tester needs to be fully connected to the target network. It means that you need to be in China to test on China Mobile and in India to test on BSNL.

Summed up, these challenges make independent testing of mobile applications a complex and expensive affair. However, herein lies the opportunity for today’s entrepreneurs to devise new ways for addressing these issues. Emerging technologies like cloud computing can go a long way in addressing the challenges of testing mobile applications. Creation of tester communities that can test an application for particular geographies can be the next big idea for this industry.

The key is to constantly innovate and identify new business processes that maximize revenues and cut costs without compromising on service requirements.

(The author is CEO, Prakat Solutions)