Monday, July 21, 2014

Types of Testing for Mobile Application Testing

a) Functional Testing: The functional testing of any app consist of the implementation of the required functionality for the implementation of a mobile app. It consist of three sub-characteristics which lead to different types of tests like Completeness of all required functionality, Accuracy of data processed by application and Suitability of application for the intended use.
It also take cares of synchronization and resource sharing to avoid conflicts and deadlocks when we work with client server architecture applications.
b) Security Testing: In security testing the encryption/decryption technique of application is taken into account with the facility that sensitive should store on device should always appear in encrypted form and if application require that data for verification only then it should not store data like passwords/PIN codes.
We also verify that when working with multi user support application that in simultaneous transactions or requests that data should not interfere with each other.
The app has to be resistant against threats like listed in Microsoft’s “STRIDE” model (Spoofing, Tampering, Repudiation, Information disclosure, Denial of service, Elevation of privilege)
If application supports payment transitions than it must confer with Payment Card Industry Data Security Standard (PCI DSS) and Payment Application Data Security Standard (PA DSS) guidelines.
c) Performance Testing: User expectations in the speed of a mobile app is often higher than that in a comparable desktop application, the hardware is less powerful than a desktop PC, this leads to a high demand for performance optimization. The performance of application can vary because of bandwidth and latency of the data network affect the speed of data transfer and delays in the app sending and receiving data, for client-server or cloud apps, the performance of the server also influences the performance of the app and performance of the device itself limits the execution speed of the app code.
d) Usability Testing: This includes text visibility in the selected language, navigation between screens, and verification of functionality, Clear UI design, memorable navigation paths and transparency of the app state are fundamentals for good usability.
e) Compatibility Testing: This entails validating the application for different mobile devices, OS versions, screen sizes, and resolutions as per the requirements, checking if integration server changes, checking the app isolation with other apps on the device.
f) Marketplace guidelines compliance Testing: Depending on the App Store Provider, an app has to pass certain release checks before being published. Minimal review procedures cover malware checks and identity verification of the developer. Other stores, like e.g. the Apple AppStore, provide extensive rule sets of checkpoints to be adhered to.
It must be integral part of a mobile development and test strategy to early test for these checkpoints in order to minimize the risk of rejection by the store review team.
g) Robustness Testing: The application should have ability to handle wrong input, low memory, interrupt by incoming calls or messages, sending the app to the background and then launching app, using application in low memory scenarios & should give proper message as and when required, power off/battery drainage which leads to turning off  the device while using app etc.

h) Localization Testing: The application should have ability to work with different language settings and application should work fine in different date formats, different phone number formatting etc

2 comments:

  1. Very nice and interesting post. I have even framed few points on mobile app testing. Hope you would like it - http://bit.ly/1M3TSwx

    ReplyDelete