This document will serve as a pioneer for all the naive and rookies to give the basic cognizance as briefly as possible and to fathom the core of mobile app testing. It primarily consists of native, web, and hybrid applications for both android and iOS. Applications that are tested are E-learning user-friendly apps whose prime motive is keen learning and essential knowledge to the user.
Validation of the application by Installing/Uninstalling it on the devices. This testing verifies that both the process goes smoothly and should consume less time. It should be very simple and should display the progress of both with proper information.
Functional testing ensures that the application is working as per the requirements. It is user interaction testing. In this we do end-to-end testing, check all the functionality of the application.
An application while functioning may face several interruptions like Incoming calls or Network coverage outages and Recovery. The different types of interruptions are:
- Incoming and Outgoing SMS, MMS, and Calls.
- Alarm Popups.
- Cable insertion & removal for data transfer
- Media power On/Off.
- Device power cycle/ Battery low pop-ups.
Devices can communicate with the network on one or more channels such as Wi-Fi 4G, 3G & 2G, etc. Certain functions in your app may not perform well on certain channels and protocols. So it is necessary to test the app in different network conditions.
- Apps should behave according to specification if connected to the internet through Wi-Fi.
- Apps should behave according to specification if connected to the internet through 3G.
- Apps should behave according to specification if connected to the internet through 2G.
- The app should behave according to specification if it is out of network reach.
- The app should resume working when it gets back into the network reach.
- The app should behave according to specification if it switches between networks.
Sometimes our application gets Crash on performing these scenarios. So Developer needs the exact points where our application crashes, so to find that “Crash logs” follow the below steps.
- Sync your device with “iTunes”.
- Crash logs files are always in IPS File or CRASH File.
- Now follow the below location on your computer.
C:Usersabc.123 (name*)AppdataRoamingApple ComputerLogsCrashreporterMobiledeviceabc.123 iPad (name*)
We can also find the “Console Logs” by using an instrument named “iPhone Configuration Utility Tool”.To find the Console logs follow the below steps.
1. Sync your device & Open the “iPhone Configuration Utility Tool” & Tap on your device.
2. Now tap on the Option Console, there you will get all the console logs. These logs always get saved as file name (.txt).
3. By using this tool we can also uninstall the apps on our device.
In Performance Testing the objective is to ensure that the application performs acceptably under certain performance requirement such as to check behavior of app on different load conditions, Behavior of app on making device memory full, On different network conditions, Monitoring CPU Utilization, Check battery consumption, Camera performance is well within required guide line, Screen resolutions (Portrait & Landscape modes) etc.
Now for the Scenario of testing the Application by making Device memory full, We need full our device memory, there should not left any space even on the cache memory of our device. We can create the text files for this and can take some screen shots at the end to make cache memory full.
Now to create text file we need to follow the below steps:-
1. Right Click on the Cmd Prompt.
2. Click on Run as Administrator & Paste the below command.
fsutil file createnew C:”file name”.txt “file size”
File created has its size in bytes. Sample File: fsutil file createnew C:textfile.txt 1024
3. You can create the file in any of the drives of the system.
Default location: C:WindowsSystem3
Now check the saved data which you have already performed before making your device memory full. Check the behavior of the application, it should behave according to its specification.
In this testing we check the behavior of the app while upgrading the application from the store, By upgrading the iOS Version for eg:- Upgrading the device from iOS 7 Version to iOS 8 Beta Version. Application should behave according to its specification after upgrading it. There should not be any data loss.
Now to upgrade the iOS versions we can follow the below steps:
- We need the IPSW files to upgrade. Extract this IPSW file anywhere in your system.
- Sync your device with iTunes.
- Start iTunes and hold the “shift key” and click on the “Restore iPad” button. iTunes will now allow you to select the IPSW file which you have extracted.Select that file, this will take some few minutes & after that your device will get upgraded to new version.
Validating the application for different mobile devices, OS Versions, Screen sizes and Resolutions as per the requirements, Compatibility in different browsers, Checking if integration server changes, Checking for the app isolations with other apps on the device. Compatibility of an app with previous app version.
It is an informal testing technique, It is performed without any formal test plan, It does not follow any test design technique to create test cases. Testers randomly test the application without any test cases or any business requirement document. It is suitable for conducting random and cost effective tasks during the early phase of software development. It provides quick results & conserve more time.
This testing is to make sure that the mobile application is easy to use and provides a satisfactory user experience to the customers. The main objective is to ensure that we end up having an easy to use application.
I hope you find the document helpful for testing a Mobile Application.
Written by Ankit Arora