Tuesday, May 6, 2014

Key Challenges in Mobile Application Testing

1. Variety of Mobile Devices- Mobile devices differ in screen sizes, input methods (QWERTY, touch, normal) with different hardware capabilities.
2. Diversity in Mobile Platforms/OS- There are different Mobile Operating Systems in the market. The major ones are Android, iOS, SymbianWindows Phone, and BlackBerry (RIM). Each operating system has its own limitations. Testing a single application across multiple devices running on the same platform and every platform poses a unique challenge for testers.
3. Mobile network operators- There are over 400 mobile network operators in the world out of which some are CDMA, some GSM. Each network operator uses a different kind network infrastructure and this limits the flow of information.The performance of a carrier’s network can have a huge impact on the user’s experience with an app.
4. ScriptingThe variety of devices makes executing the test script (Scripting) a key challenge. As devices differ in keystrokes, input methods, menu structure and display properties single script does not function on every device. For longer duration projects we can leverage automation. Smoke testing or regression testing can be automated up to a certain limit.
List of available automation tools for mobile application testing:
-  Robotium (specifically for Android)
-  See Test (both for iOS and Android)
-  Monkey Talk (both for iOS and Android)
-  Calabash (both for iOS and Android)
-  Eggplant (both for iOS and Android)
-  Appium (both for iOS and Android)
-  Silk Test (both for iOS and Android)
-  Frank (specifically for iOS)
-  KIF- Keep It Functional (specifically for iOS)
5. Evolution of different mobile OS versions: Like Android versions 1.0 to 4.4(Kit Kat Latest,at the time of writing) etc and iOS versions from iPhone OS 1.0 to iOS 7.1 (latest, at the time of writing) etc.


6. Tight Deadlines: Teams are being asked to produce value in weeks instead of months or years, which creates pressure on both developers and testers. It’s sometimes not possible to buy more time for testing or bug fixing activities, then you have to report the issues while testing the application and getting them fixed parallel, side by side to testing from development team. It saves time remarkably and hence productivity increases. While developing mobile applications developer and tester need to work very closely to meet such tight deadline. 

No comments:

Post a Comment