Thursday, October 4, 2012

Mobile application testing: Practical apporoach of testing

Mobile application: 

Now a days most of the website and desktop applications are converted into the mobile applications. Mobile applications are designed and created for those persons, who does half of the technological activities on the mobile. In this current era mobile phones are not just the mobile phones, phones are converted into smartphone. Today market scenario says that Smartphone, tablets (small handheld device),pads etc... devices are seen easily in almost all the pockets, where the internet surfing, banking transactions, Email kind of secure applications can be easily done within less time.

Mobile applications are different from desktop applications.

Installation challenges:

It is easy to installation any desktop application on the computer. Files and program created and developed for mobiles applications are complete different than desktop apps. First challenge occurred in mobile apps are instllation of the apps. Depends on the size of the application, some application gets install in memory card (externally inserted).

Installation testing:

In every domain, installation of application is initial criteria of software testing process, where testing process starts. Installation is the first stage of acceptance of any app. Installation timing is the one of the importance criteria of testing. Ex: Graphics driver should be install within 5-6 min. Mobile application should be install in  2 min (max)

Icon/image verification

After installation of build, shortcut icon of the app verified. Icon should be proper size and the name of app should be correct.

UI  verification

After clicking on shortcut app icon ,app should be open. As per the functional requirement specification, user interface, tabs, links, page, fonts, background image, background color, buttons etc... are checked by tester. User interface is the first look of any app, where user has to interact with the all the features for work.

Functionality testing

Every software is designed with several components and each components are designed for their different functionality. In a software program all components are connected. Functionality testing is defined for testing all the functions with respective to the particular component. A combination of input has to give to test a function. In mobile application, functionality testing is applicable with touch pad  device keys, toggling keys, etc... Each application has different images, links, menus,database etc...these functionalist are checked with ADD (application design documents)/FRS (function requirement specification)/Deliverable data documents/SRS (System requirement specification). 

                                                                               Test engineer has to test the database results, links, image clicking (webpage/video/audio opens from image).

Interrupt testing (voice call/SMS/MMS/Device specific)

Interrupt testing are also called stress testing. Every handheld devices have their cache memory, and interrupt handler memory. Incoming call, SMS, MMS, Network availibility pop up messages, low battery message, charger interrupts etc.. can happen during the playing of mobile games, using of mobile applications. Applications has to be paused/continue (as per design). If the application crashes/freezes/hang/not responds for few min, bug should report to bug tracker system. 

Apart from above kind of interrupts, each handheld devices are manufactured with different keys (buttons). These buttons are volume toggling keys, switch off key,device specific key interrupt (facebook key etc..).  Clamshell interrupt, landscape/portrait switching, slider interrupt are another kind of interrupts. All apps should handle these interrupts. 
Device power cycle (catalytically restarting of equipment)

Power cycling is the automatic failure process of device restarting. During the testing of mobile application which introduces heavy load/unresponsive state/crash/hang/network activity to mobile (mostly affect on internal memory), usually equipment off and then start again. Its a testing criteria for the mobile application, its does not harm or less problematic to hardware, but its gives impact on functionality and behaviours of software.