In this blog I would like to share my views on how can the testing approach be with respect to mobile applications. I have first categorized it as:
In Detail:
Porting/Installation
Interruption:
Functional:
Error Message handling:
- Porting/Installation of an application
- Interruption to an application with other supported functions in mobile
- Functional testing of an application
- Error handling
In Detail:
Porting/Installation
- Porting the build onto mobile/device should be tested. Unloading and reloading of an app also.
- Porting (.jad/.jar) file or other build mechanism testing should be successful. As an example Incase of Palm it is through command line we need to build first and then install it. If URL based download is supported, that should also be tested properly. Eg: For an Android Application the build can be directly installed from the Email.
- After successful porting of application delete the icon and check how you can get it back easily. Eg: If it is in case of iPhone app deleting icon is just the uninstallation of app. In case of Android it is not that case.
- Try to install application when there is no enough memory in the phone.
Interruption:
- Blue tooth, Infrared interruption
- Call (Accept/Reject/Establish) interruption
- Voice sms/simple sms interruption
- Key press (Eg. when one of the screen in app is opened and when the Del key in the mobile key board is pressed what happens..)
- Low Memory
- Charger effect
- Battery consumption, Removal etc..
- Menu navigation: check if all the links there, are taking you to the right page or not.
- How the page is placed in landscape view and portrait view
- Application or page loading time
- Logo and background colour should be in sync across the application
- Giving interrupts at each screen (loading screen, main menu etc.). Eg: Call to the mobile while the application is loading and check what happens
Error Message handling:
- If your application runs only with Internet, access the application when Internet is down and check if your getting proper error message
- when the application is taking lot of time to load
- when there are interrupts how is the behavior