Mobile App Testing Guide. Basics of Mobile App Testing



Similar documents
Mobile App Testing Process INFLECTICA TECHNOLOGIES (P) LTD

Mobile Test Strategy. Shankar Garg. Senior Consultant - Testing

WHITEPAPER BEST PRACTICES IN MOBILE APPLICATION TESTING

Image Area. White Paper. Best Practices in Mobile Application Testing. - Mohan Kumar, Manish Chauhan.

Automated testing for Mobility New age applications require New age Mobility solutions

Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality,

Mobile Application Testing

Compatibility Testing for Mobile Apps and Websites

Mobile App Testing is not something special

Mobile Application Development

Minimum Requirements for Web Based Applications

MOBILE APPLICATION TESTING. TekMindz s Testing solutions for enterprises INDZ TM TEK

Mobile Testing That s Just a Smaller Screen, Right?

Choosing a Mobile Application Development Approach

Mastering Mobile Web with 8 Key Rules. Mastering Mobile Web with 8 Key Rules

A Beginners Guide To Responsive, Mobile & Native Websites 2013 Enhance.ie.All Rights Reserved.

Mobile Communicator for Mobile Devices

Developing and deploying mobile apps

Mobile Operating Systems & Security

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

ASHVINS Group. Mobile Application Testing Summary

This is our best... YOUR best... Online Banking yet!

User Manual Version p BETA III December 23rd, 2015

WEB, HYBRID, NATIVE EXPLAINED CRAIG ISAKSON. June 2013 MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER

Spring Hill State Bank Mobile Banking FAQs

Syllabus Version

Cloud Based Mobile Application Testing

Two Factor Authentication (TFA; 2FA) is a security process in which two methods of authentication are used to verify who you are.

WOS Cloud. ddn.com. Personal Storage for the Enterprise. DDN Solution Brief

Mobile Performance Testing Approaches and Challenges

CiviMobile & CiviSync Mobile. Peter McAndrew Rohit Thakral

Syllabus Version 2.5_R ( )

Mobile Performance Management Tools Prasanna Gawade, Infosys April 2014

Here s how to choose the right mobile app for you.

Sample Exam Foundation Level Syllabus. Mobile Tester

Mobile Application Testing Challenges & Best Practices

Feature Matrix MOZO CLOUDBASED MOBILE DEVICE MANAGEMENT

ONLINE ACCOUNTABILITY FOR EVERY DEVICE. Quick Reference Guide V1.0

Connecting Software Connect Bridge - Mobile CRM Android User Manual

Contents. Executive Summary 3. A Summary of Mobility Challenges 4. Mobile Platform Capability: 6. Mobile Functional Testing 8. Mobile Performance: 10

White Paper Bridging the Essential Gap between Continuous Quality and Crowd Based Testing

Quick Start Guide. Version R9. English

ExpoBadge Mobile App User Guide

Dartmouth College Technical Support Document for Kronos PC version

Localization Testing in Mobile World Software Testing Conference, 2013

Sample Exam Foundation Level Syllabus. Mobile Tester

Media Server Installation & Administration Guide

Mobile Application Development: Challenges and Best Practices

Introduction to Android

Mobiliti. Certified Device List MR5 Release. Last Updated November 21, ASP Version

E21 Mobile Users Guide

Testing & Assuring Mobile End User Experience Before Production. Neotys

Mobile Test Automation - Right Tools and Right Approach

MOBILE APPS. QA Testing for mobile applications

(

Flexible Identity. OTP software tokens guide. Multi-Factor Authentication. version 1.0

White Paper. Bridging the essential gap between Mobile Cloud and crowd based testing. 1. Introduction. 2. Testing Lifecycle

HTML5 the new. standard for Interactive Web

MOBILE APPLICATION TESTING ENGINEER

About Parallels Desktop 7 for Mac

Getting Started What s included Setting up Fitbit One on a computer Mac & PC Requirements... 2

EXPOLeads Connect User Guide

Open source Test Automation Tools for Mobile Applications A Primer

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

Workshop on Android and Applications Development

PEGA MOBILITY A PEGA PLATFORM WHITEPAPER

Numara Track-It! Product Family Overview.

MOBILE MARKETING. A guide to how you can market your business to mobile phone users. 2 April 2012 Version 1.0

Comparing Native Apps with HTML5:

Application Development Best Practices

Mobile Testing, Agile Methodologies & You!

BMC Track-It! Key Benefits

Discovering Computers

How To Use The Elena Mobile App

mcashier User Guide To accept payments To cancel a payment

Best practices building multi-platform apps. John Hasthorpe & Josh Venman

User's Guide. [Home Network] app. Model No.

Addressing Mobile Load Testing Challenges. A Neotys White Paper

1/5/2013. Technology in Action

Carroll Hospital Center

StruxureWare TM Data Center Expert

GHG Protocol Product Life Cycle Accounting and Reporting Standard ICT Sector Guidance. Chapter 7:

Kaseya 2. User Guide. Version 7.0. English

Cross-Platform Development

Available on VitalSource

Challenges in Android Application Development: A Case Study

Transcription:

2015 Mobile App Testing Guide Basics of Mobile App Testing

Introduction Technology is on peek, where each and every day we set a new benchmark. Those days are gone when computers were just a machine and only few people were using them. In last 2 decades we have seen massive change in computers and other computing devices not only in sizes but also in functionalities. Today computers and mobiles are like our virtual servants who follow our commands. They have changed the human life, their way of thinking and made this world a place where nothing is impossible. Mobile technology was a revolution that has changed the technology as well as the human lifestyle forever. Smart devices are now in trend where N number of tasks can be easily done by these devices. Here in this tutorial I am not going to list out those things because you people know better than i do. Smartphone are not only considered as a mini computer but also offers vast capabilities to the users. Apps are the soul for a Smartphone that can make a Smartphone even smarter. Here in this article we are going to cover all aspects of mobile app testing and its importance for a successful mobile app.

Mobile App Testing Mobile apps come either pre installed in mobile devices or can be installed from mobile software distribution platforms. So Mobile application testing is a process in which application software within a hand held mobile device tested for its functionality, usability and consistency. This is a long run process which starts from the initial development phase of an app and each and every developed component tested throughout the process. The final piece of software must be high performance, error (bug) free application. Source: Wikipedia Why Mobile App Testing Today Smartphone is a very common term for us where we have a huge variety of mobile devices in the market. Many mobile OS are available in the market with millions of mobile applications on their app stores. As developers developing apps for users it s very important to test them for 100% efficiency. There is no margin for errors in an app because of negative marketing by the users and all of your investment will lost just because of few silly bugs. On the other hand developers are also humans and there is always an element of risk of errors. A proper product testing can minimize them to make a successful bug free application. The reasons why mobile application testing is required 1. To test a variety of mobile device hardware 2. To test a variety of mobile platforms/ Operating systems 3. To test a variety of network carrier 4. To test a variety of mobile screen sizes

Category of Mobile App Testing Manual testing Automation testing Manual testing is a process in which a tester uses an application and goes through with all functionalities as an end user to check the behavior of the mobile app. Generally, to ensure the correct behavior of mobile app, tester follows the written test plan that is actually a set of test cases. Test cases are set of conditions under which a tester can determine whether an app or one of its features is working properly or not. Stages of manual testing: 1. Unit testing 2. Integrating testing 3. System testing 4. User acceptance testing

Unit testing is a testing in which an individual unit of a source code is tested- for example: function, class, procedure and interface. This is the smallest testable part of the application. Integration testing is a testing in which individual units of an application or source code combines together and tested as a group. In simple words integration testing is a process in which tester test the interfaces between the components. Integration testing comes after unit testing and before system testing. System testing: Testing in a complete integrated system to evaluate the system compliance with its predefined specification and requirements is known as system testing. User acceptance testing: This is considered as last phase of the mobile app testing which ensures the application quality for the real world scenario. In this testing the actual users of the mobile app test the app for the real world to verify whether the app can handle the required task in the real world or not. It is also known beta testing or end user testing. Automation testing: Automation testing is a process in which tester controls the execution of tests through special tools and software and compare the actual results and expected results. Types of approaches in Automation testing, Code driven automation testing Graphical user interface testing API driven testing

Mobile Testing Hardware testing Software or Mobile app testing Hardware testing is a mobile device testing including all hardware, screen size, resolution, camera, processes, memory, Bluetooth, Wi-Fi etc. On the other hand testing applications that are running on a particular mobile device is known as the Mobile application testing. Further mobile apps can be categorized into three parts, Native apps are developed to use on a particular mobile device or platform. They have their own development environment and development languages. Mobile web apps are websites or apps that can be accessed through the mobile web browsers like Firefox, opera or chrome by connecting through mobile data network or WIFI. Hybrid apps are the combination of native mobile apps and mobile web apps that can be accessed through different mobile devices and based on the web technologies like HTML5 and CSS3.

Types of Mobile Application Testing Usability testing: It is all about user satisfaction and user experience. In this type of testing testers make sure that the app is easy to use and how to increase the user experience. Compatibility testing: There are N numbers of mobile devices, screen sizes, browsers and operating systems versions in the market. In this testing tester ensures the compatibility of a mobile app into all the above mentioned variations of the mobile and their types. Interface testing: In this phase of testing we generally test all the basic interfaces of an app like buttons, menu, navigation, history, bookmarks and basic flow of an app. Services testing: Testing the basic services of an application in both the modes (Online & Offline) Performance testing: Testing the performance of an application on different conditions is known as performance testing. Testing mobile app performance in low battery condition or monitoring their performance on 2G, 3G and Wi-Fi connectivity separately. This is one of the most important testing that ensures the overall effectiveness of a mobile app. Security testing: Generally mobile apps contains lots of user s data and this type of testing ensures that the information system protests data or not. This is one of the most important issues these days in the mobile app development. Security testing is all about securing app and other user related information from the unauthorized access.

Installation testing: This type of testing ensures the proper installation and uninstallation of an app on different devices. Low level resource testing: This type of testing validates all types of resources usage by the application. Memory usage, data base and temporary files behavior are some of the examples of this type of testing. Operational testing: Backup, recovery and up gradations are some of the common issues covered in this type of testing. Here in this testing tester validate the backup and recovery plans in the low battery conditions or validate the data loss conditions while updating an app on app stores. Mobile App Testing Strategy Mobile application testing strategy is your plan that you are going to follow throughout the testing process. This plan ensures the quality and performance standard for a mobile app. Selection of devices: This is one of the most crucial stages of testing where we have to make a market research for the mobile devices. As we know the fact that today market is full of different devices but which one you want to target is totally up to you. Sometimes this decision is unto your client where he or she has to decide the desired device. Generally popularity factor matters where people pick the most popular devices from the market or you can choose the devices which best fits in your application scope and usage. Emulators: Emulators are software where testers can check the display of their mobile apps on different mobile devices. In simple words emulators help to test mobile website or mobile app on different mobile and tablet devices through your web browser. They simply duplicate the looks and features of a device in your web browser remotely. Emulators ensure the quality and looks of an app from the initial stages of the mobile app development and testing. There are a wide variety of emulators, Mobile emulator Browser emulator Operating system emulator

Test Cases for Mobile App Testing Some of the sample test cases are given below for Mobile app testing (Android, iphone & Windows) Generic test cases, 1. Battery usage, while running an app 2. Speed of the application, how quick app loads with all features while comes in action 3. Data requirement, how much data it requires to download 4. Memory requirement, how much memory consumes to use the app 5. Functionality of the app Specific test cases, Verify the app installation/uninstallation successfully Verify the app performance in the low network conditions Verify the app can be resumed in its same point after taking a call Verify that user can reject the call while using an app and again resume the same app point Verify that user can get the SMS alerts while running the app Verify that user can resume back to the app same point after reading the SMS.... And many more,

Challenges of Mobile App Testing Device Fragmentation: Till now millions of mobile devices sold in all over the world and still counting. More than 20 small and big mobile manufacturing companies are selling their mobile devices with android OS. Many screen sizes, resolutions, memory, hardware and other type of diversity is available for android app testing. It is very difficult to test an app for android devices because you have to test on lots of devices. On the other hand ios testing is little bit easier as compared to android because ios is not open for all. ios comes only with Apple products so that testers can easily test ios apps for all device variations. Connection Type: There are many types of standard for mobile data connection available like 2G, 3G, 4G and Wi-Fi. The performance of a carrier network is very important factor while testing an app because sometimes your device may not be connected to the network or it may be in flight mode. Different OS Versions: Mobile OS like ios and Android are some of the most popular OS in the market. ios upgrading is very quick and easy for Apple user because of less fragmentation in the devices. On the other hand Android uptake has historically been very slow and fragmentation is very huge.

Power Consumption and Battery Life: Smartphone s battery life is a very serious concern for any user and it is very important for an app to use minimal battery. We use many apps daily and some of the apps silently runs on the background and uses the CPU cycles to run. It is very important for developers to develop mobile apps that can run on very low battery consumption and it s also tester s duty to validate the app low battery consumption. Usability: App usability is important because complex apps can frustrate the users. Sometimes device screens are too small and we try to put maximum information on the app in this case your app is for looks so good for a user. Font size and visibility is also important and plays important role in the app popularity. Internationalization: This is one of the most serious issues these days and still need development and analysis in it. Most of the apps designed for global use and it is very important to also care of regional trails like languages, time zone etc. It s important to validate the app s functionality when someone changes the time zone. It s also considerable that sometimes western design may not work with eastern countries audience or vice-versa. Right to left languages is still a big challenge for developers and testers. Thanks