mobile application testing training presentation

29
BEST PRACTICES Mobile App Testing www.mobignosis.com Author: Kavitha, Test Training Head, MobiGnosis © 2013 MobiGnosis

Upload: mobignosis

Post on 28-Jan-2015

106 views

Category:

Education


1 download

DESCRIPTION

Mobile Application Testing Training Presentation in Bangalore by experienced Professionals in Industry. Get a FREE Demo Now. Visit http://www.mobignosis.com/mobile-testing-training/

TRANSCRIPT

Page 1: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

BEST PRACTICES

Mobile App Testingwww.mobignosis.com

Author: Kavitha, Test Training Head, MobiGnosis

Page 2: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Is a software application designed to run on smartphones, tablets and mobile devices.

• Application distribution platforms – appstore, googleplay

• Designed and tested on emulators before the field testing

• Ex. calender, contacts, email, weather, games, banking etc.

Mobile application or mobile app

Page 3: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Mobile application or mobile app …

Page 4: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Short dev cycle, rapid changes, multiple form factors.

• Native, Web and Hybrid apps.

• Multiple devices and OS.

• Non functional – Security and performance.

• Backward compatibility.

• Popular mobile web browsers.

• Network.

• Graphics, Video, Audio.

• Memory usage.

• Usability .

• What is coming next ?.

Mobile App Challenges

Page 5: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Mobile app dev cycle

Page 6: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Mobile app dev process

Page 7: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Types of mobile applications• Native app

• Runs on device OS and firmware

• Android, IOS

• Web app

• Browser app, web capable mobile devices

• HTML, javascript

• Hybrid app

• Combination of Native and Web apps

• Has cross platform compatibility

Page 8: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Multiple devices and OS

Multiple Handsets - i Phone, Android Mobiles, Blackberry, Nokia, Windows Mobile

Multiple Platforms - Android, IOS, Brew, J2ME, Windows Mobile and Symbian.

Page 9: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Opera mini

• Google chrome

• Safari

• IE mobile browser

• Dolphin

• Skyfire

Popular mobile web browsers

Page 10: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Mobile ecosystem

Page 11: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• First impression

• Is anything confusing ?

• Does the app feel slow ?

• Where are you testing it ?

• Hardware device, network, OS version

• Does the app crash or freeze ?

• How’s the weather ?

Start testing….

Page 12: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Locate the icon on device home or app screen.

• Tap the icon to start the app.

• Examine the splash screen as the application loads.

• Once the app loads, stop and look at it carefully.• Cluttered ? Confusing ? Lost ? Quick and easy ? Location and Privacy

data ?

Mobile apps at a glance

Page 13: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Installation/uninstallation • download and delete

• Workflows and feature testing• Functional – specs and requirements

• Data – different types of data

• Regression

• Performance – quick and responsive

• Localization – handle different langugaes

• Scenarios• Credible usage stories and workflows

Mobile app testing approach

Page 14: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Device interactions (web, network, apps)• Wifi, Cellular Network, apps, accessories

• Documentation review• With in app

• Marketing material

Mobile app testing approach

Page 15: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Tap

• Double Tap

• Press

• Press and Drag

• Swipe

• Flick

• Shake

• Rotate

• Pinch

• Spread

Gesture Tour

Page 16: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Installation

• Application Start/Stop Behavior

• Application Credentials

• Interruptions – Voice calls

• Interruptions – SMS

• Autostart

• No disruption to key device applications (pre installed)

Testcase strategies

Page 17: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Types of mobile app testing

• UI Testing – Color, menu, style

• Performance and stress – under low resources

• Usability testing

• Certification compliance testing

• Submission guidelines compliance testing

• Interruption testing – voice calls, sms, low memory notification

• Monkey testing

• Low network/no network

Page 18: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

• Singular Approach – one device, one language, one carrier

• Proportional Approach – narrow combination

• Shotgun Approach – multiple combination

• Outsourced strategy – remote device services, personal network

Platform test strategies

Page 19: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Android app testing

Page 20: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Android apps

•  Managing the Activity lifecycle• Start activity

• Pause and resume activity

• Stopping and restarting

• Recreating

• Fragments• Nested activity

• Layouts

• Understand the android app – code walkthrough

Page 21: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Android application life cycle

Activity

• In Android, each application is a process,called activity.

• Android (aka Dalvik VM) maintains an unique activity stack to observe the status of process, and manage the memory.

• Life cycle of an activity is managed by Android OS, not by application itself.

http://developer.android.com/training/basics/activity-lifecycle/index.html

Page 22: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Status of an activity

• Active - "Active" is the status that an activity is running.

• Paused - "Paused" means an activity is in the background.

• Stopped - The activity has already exit the screen, no other action is running.

• Dead - The activity has been finished manually, or garbage collected by system.

Page 23: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Activity API

• ● OnCreate()

• ● OnStart()

• ● OnResume()

• ● OnPause()

• ● OnStop()

• ● OnRestart()

• ● OnDestroy()

Page 24: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Service• Four components in Android:

• Activity,

• Service,

• BroadcastReceiver,

• ContentProvider

• Except ContentProvider, the others main objects are running in the main thread.

• The life cycle of Service is most persistent (longest).

https://marakana.com/static/slides/AndroidMainBuildingBlocks.html#(1)

Page 25: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Automation Automation is a process, which includes the development

of scripts to run the testcases automatically with out manual intervention and to log results.

• Rregression testing - automation.

• Repetitive testing and time consuming.

• Reduce time, cost. Increase productivity and test coverage

Why Automation ?

Page 26: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Steps to automate

1. Understanding the application (Technology Used).

2. Choosing a suitable tool for the automation.

3. Identifying functions (like login, register new users).

4. Identification of the Scenarios (Test Cases) for automation.

5. Writing user defined functions for Unit functions and scenarios.

6. Adding verification fuctions (more the merrier).

7. Scenarios should be independent of eachother.

8. Combine all the scenarios and run end-end (test suites).

Page 27: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Automation tools for Android based app

•  Selenium - Android driver• Installing android emulator and configuring

• Configuring webdriver apk in emulator

• Identifying objects

• Parameterization

• Implicit and explicit wait

• Do’s and don’ts with android driver

• Andriod test framework

https://code.google.com/p/selenium/wiki/AndroidDriver

Page 28: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Robotium•  Is an open source test framework

• Robust automatic black-box test cases for Android applications.

• Functional , system and acceptance test scenarios can be automated.

• https://code.google.com/p/robotium/

Page 29: Mobile Application Testing Training Presentation

© 2013 MobiGnosis

Thank You – Team MobiGnosis