Mobile Testing

Mobile devices have witnessed a phenomenal growth in the past few years. A mobile application is a software that runs on a mobile device such as cell phone or MP3 player that will allow the device to perform specific tasks that are typically restricted to PCs. It also known as downloadable, mobile applications are common on most phones, including inexpensive entry level models. Mobile applications either come pre-installed or can be installed from mobile software distribution platforms.

Types of Mobile  Applications:
  • Browser based application
  • Pre-Installed application
  • Installed application

Browser based application:
Browser based mobile applications are similar to web applications, to work with browser based applications we require a mobile browser, URL of the application and Internet connectivity. Browse the application URL to get the content from server and check the application functionality, look and feel and performance of the application on different types of mobile devices with the help of different types of mobile browser.

Pre-Installed application:
These applications shipped along with the mobile device, no need of installation of these applications. User is able to use these applications but not able to remove or uninstall preinstalled or default applications.

Install-able Application:
User can able to download these type of applications from market places. User have full control over the installable applications. User is able to download, install, Un-install or upgrade.

Types of Mobile Application Testing:

Mobile application testing is a process, mobile device is tested for its functionality, usability and consistency.
1. Functional Testing:
Functional testing ensures that the application performs as per its requirements and specifications.
2. Performance Testing:
It is a non-functional type of testing. Performance testing is a testing that is performed, to determine the performance and behavior of the application under certain conditions such as low battery, bad network coverage, low available memory, simultaneous access to application’s server by several users and other conditions. Performance of an application can be affected from two sides:application’s server side and client’s side. Performance testing is carried out to check both.

3. Laboratory Testing:
Laboratory testing, usually carried out by network carriers, is done by simulating the complete wireless network. This test is performed to find out any glitches when a mobile application uses voice and/or data connection to perform some functions.
 4. Memory Leakage Testing:
Memory leakage happens when a computer program or application is unable to manage the memory it is allocated resulting in poor performance of the application and the overall slowdown of the system. As mobile devices have significant constraints of available memory, memory leakage testing is crucial for the proper functioning of an application
5. Interrupt Testing:
An application while functioning may face several interruptions like incoming calls or network coverage outage and recovery. The different types of interruptions are:
  • Incoming and Outgoing calls (Example-While speaking using watsup/facebook/Google voicetalks, If you receive a network call)
  • Incoming Notifications while outgoing calls/chatting
  • Incoming and Outgoing SMS and MMS
  • Battery Removal (While Calling/Chatting/Downloading a App/Playing a video or Audio)
  • Cable Insertion and Removal for data transfer
  • Network outage and recovery
  • Media Player on/off
  • Device Power cycle
An application should be able to handle these interruptions by going into a suspended state and resuming afterwards.
6. Usability Testing:
How usable to user, how much easily you can use the device like switching among applications. To review the application user interface. To verify opening/closing/switching the applications. Ease of multiple applications.
7. Installation Testing:
Some mobile applications come pre-installed on the device whereas others have to be installed from the store. Installation testing verifies that the installation process goes smoothly without the user having to face any difficulty. This testing process covers installation, updating and uninstalling of an application.
8. Certification Testing:
To verify the compliance certifications, each mobile device needs to be tested against the guidelines set by different mobile platforms.
9. Security Testing:
To check authentication and authorization policies, data security, session management, for vulnerabilities to hacking and other security standards.