iDev: Basics of Mobile Application Testing

Hi Friends, 

Mobile Application Testing Technique :

In this article we are going to see the basic things which are usually expected to be tested for any mobile application.

What is Mobile Application Testing?

It is a process to test mobile applications for its functionality, usability and consistency. Any mobile application will either come pre-installed or can be installed from mobile software distribution platform.

Different types of testing that can be done for any Mobile Application

  1. Installation Testing :  This process should be user friendly and should consume less time during the process of installation in the device.
  2. Functional Testing :  It focuses on functioning of the application.
  3. Stress / Performance Testing :  It focuses on the performance and load that an application can take while performing.
  4. Power Consumption Testing :  It focuses on mobile battery power consumption while the application is running.
  5. Interrupt Testing :  Any interrupt caused due to activities such as phone calls, SMS or MMS, battery down, Network not found etc.
  6. Usability Testing :  It should satisfy all user requirements and its a key to the success of any application.

1. Installation Testing

Installing any mobile app should be very simple and we should display the progress of the installation with proper information. So the user does not keep guessing when will the installation get completed.

2. Functional Testing

This is completely dependent on the functioning of the application. Following key points should be taken care of when doing functional testing of the any mobile app.

  1. Make sure all the functional flow of the application works as per the business logic.
  2. The application developed must be tested thoroughly in all major devices for its functionality.
  3. If the memory is full still the application should work properly.
  4. If application is integrated with any e-pay/payment gateway then it should make sure that the data is highly secured.
  5. If application supports multiple orientation then the app should function accordingly.
  6. If application is forcefully stopped during page loading or navigating then it should provide proper informative message.
  7. Application should not crash any time and if it happens then we should debug the scenario why, where and how it crashed.
  8. Monkey testing must be performed by the QA.

3. Stress/Performance Testing

The most painful part of any application is stress & performance testing and it should be handled efficiently.

  1. It finds the exception which are unnoticed during functional and user interface testing.
  2. Application should be capable of handling 20% more than the maximum expected load.
  3. If a user performs same operation again and again then it should not crash or get hanged.
  4. If multiple applications are running at a time in the device then our application should be smart enough to release the phone’s memory for other applications when our app is in background and when our app is active then it should work without any abnormal behaviour.
  5. The load time should not be too much.
  6. Negative test cases should always be performed for better performance of the application.
  7. When battery is low and the app is running, verify that the app runs perfectly without any crashes or limitations imposed by OS of that device.

4. Power Consumption Testing

  • To start this testing, make sure mobile device  is charged to 100%, so it is easy to measure the power consumption.
  • Make a note of the time, when you start the app and its testing.
  • Perform the tests with different scenarios and based on the start time and ending time, measure the battery power consumption.

5. Interrupt Testing

There are different external factors which can be very crucial and should be considered while developing any application.

Network Connection type : Application should easily run on Wi-Fi or 4G or 3G or 2G connections.

  • If a device moves out of any network then it should automatically switch to other network.
  • If there is no SIM card in the device then also the app should work properly ( provided it is independent of Mobile Service Network ).
  • If Airplane mode is active then also app should work properly ( provided it is independent of any data service requirements ). And if there is any function dependent on it and not working then it should provide proper information to the user.

SD Card Interaction : This factor can play a vital role in the mobile device.

  • The application should provide user friendly message when any function cannot be performed due to missing SD card.
  • App should provide an option to move the app to SD card and its functioning should also be proper.

Phone calls and other interruption

  • When working with any application and there is any interruption due to any phone calls or other reasons then the application should go in paused mode and run in background. And after that interruption is over, app should return back to foreground but in pause mode.

6. Usability Testing

The most important factor which should be taken extra care while developing a mobile application is its usability. The success and failure of any application depends on its User Interface.

  • UI of the app should be as per device screen size and no text/control should be cutting off.
  • Text should be readable.
  • Provide progress indicator if the app/page is loading. So user is aware that the app is fetching some data.
  • Button size should be proper and large enough that it should be easily clickable by the large fingertip and spacing between 2 buttons should also be good enough.

So this is it in the basics of any mobile application testing from my side. I know that I have left other QA areas in this article which also needs to be tested in any mobile app. I will try to cover those in my next article. Till that time if you have any queries or feedback, drop it in comments section.

Reference Article : Click here 

Thanks 

Keep Coding 🙂

Vinay Mishra

Advertisements

One thought on “iDev: Basics of Mobile Application Testing

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s