Wednesday, 29 August 2012

Mobile App Testing – The Challenges


There is no denying that mobile phones, smart phones in particular, are in vogue these days. Gradually, businesses across various sectors are shifting focus towards mobile applications because users are more interested in browsing the web on their pocket size devices rather than viewing it from bulky PC’s. The tremendous growth of mobile users has opened up a new market which is flooded with various mobile platforms and devices and thousands of applications to run on them.
Imagine if the alarm on your phone didn’t go off in the morning, your old texts suddenly went missing, or you couldn’t make that important call. This dreadful thought actually sums up the importance of mobile application testing.
Below are some points which explain in brief that why special skills are required in Mobile application testing.

1) Diversity in Mobile Device platforms
Android, Blackberry, Nokia’s Symbian and Apple’s iPhone have together grabbed a large part of the Smartphone market. But these are not the only ones; there are many other platforms that are in use like BREW, BREWMP, Windows 7, etc. While testing any multiplatform mobile application, it would be required to test it on each platform while carrying out UI testing, functional testing etc. This poses a challenge as many of these mobile platforms when triggered by a common thing might behave in a different manner and also that the platform may have some limitations as well.
 2) Diversity of the Mobile Devices
There is a huge variety of mobile devices available in market with different screen sizes, different input methods like touch screen, QWERTY keypads, trackball and each of them having different hardware capabilities. Mobile devices also have different application runtimes like Binary Runtime Environment for Wireless Java, etc. Some mobile devices communicate through WAP and some use HTTP for communication. Thus extensive testing of mobile application is important to ensure compatibility of the application with devices having a variety of the above characteristics.
 3) Diversity in Hardware Configuration
Apart from diversity in platform and mobile devices, there is diversity in their hardware also. The mobile devices come with various processors, RAM, internal memory, various sensors like proximity sensor, Accelerometer sensor, GPS, Gyroscope etc. There are many challenges of diverse hardware configurations like Mobile environment provides lesser memory and processing power for computing as compared to PC which reduces processing speed and causes variations in performance of applications. Therefore, exhaustive testing of mobile applications is required to deliver optimum performance for all desired configurations of hardware.
4) Diversity in Network
We know there is always unpredictability in network latency when applications communicate over network boundaries, leading to inconsistent data transfer speeds. It demands testing to measure the performance of applications for various network bandwidths of various service providers. Wireless network use data optimizers like gateways to deliver content and it may result in decreased performance in case of heavy traffic.  Therefore, testing should be performed to determine the network traffic level at which gateway capabilities will impact the performance of the mobile application.
The above mentioned challenges are just a few of the lot, but should be enough to emphasize the need of thorough and diversified testing of Mobile applications using specialized skills.