Вы находитесь на странице: 1из 5

This document briefly explains the types of

automation testing can be performed on


Mobile Native application and some of
commercial and open source tools which
can be considered and some thumb rules
to be considered before finalization of
Automation Tool
Mobile Native
Application
Automation
What it all takes for
Automation
Anand Reddy
anandreddyp@gmail.com
1 | P a g e


Table of Contents
Native Application Automation Testing ........................................................................................................ 2
Mobile Automation Testing Types: ............................................................................................................... 2
Functional Testing: .................................................................................................................................... 2
Mobile Performance Testing: ................................................................................................................... 3
Cross-platform compatibility testing: ....................................................................................................... 3
User Experience Testing: ........................................................................................................................... 3
Network Testing: ....................................................................................................................................... 3
Types of Automation Tools: .......................................................................................................................... 3
Key principles in selection of Automation tool ............................................................................................. 4














2 | P a g e

Native Application Automation Testing
Factors to be considered while performing Automation testing for Native Apps
Device OS Diversity:
o Android Support (Minimum 2.3 + to latest 4.4.4)
o ios support (6+ to latest 7.1.2)
o Windows Phone (Windows phone 8 and Windows Phone 8.1)
Device Screen Support:
o Supports Multi screen support (3. 5 to 10 devices)
Network Challenges:
o Multiple Network Types (2g/3g/Wifi)

Mobile Automation Testing Types:
Functional Testing:
o Identify Requirements to be automated
Testing requirements and their nature is studied for the product/application/modules. Each
requirement has its own actions, validations for testing. For example,
Scenario 1: For an application, form validation functionalities, database validation and
accessibility functionalities needs to be validated.
Scenario 2:For an application, all the web-service methods needs to be validated. This would so
include the delay time for the request's reponse from third party systems
All the identified requirements are assigned priority. This would help in identifying 'Build-
Verification Test' (BVT) requirements that should never fail.

Every tool has its own limitations. A feasibility study needs to be conducted for the
requirements against the tools. This study would result in listing requirements that can be
3 | P a g e

automated. Also based on the nature of the requirements, automation feasibility needs to be
identified.

Mobile Performance Testing:
o When compared with Desktop/Notebook environment Mobile device system
resources (Ex: Processing, Power, Memory, etc.) are limited. Hence, performance
testing of mobile applications is crucial. Cloud based provider like SOASTA helps you
accomplish the same.
Cross-platform compatibility testing:
o This is a must to ensure the native application works as expected in all different
growing number of handsets and diversified mobile OS like ios, Android & Windows
phone.
User Experience Testing:
o User behavior should be mocked up on devices at same time to ensure the app
behaves consistently across all diversified devices on cross-platform.
Network Testing:
o Real device Testing must be performed in geographically distributed environment to
account for a variety of network types.

Types of Automation Tools:
Test Automation tools for native applications can be automated using any of the following
approaches:
1. Cloud-based Automation: Cloud-based test automation vendors support web-based device
accessibility so tests can be executed on remote real devices connected to cradle. Supports
Android, Windows Phone & Ios. Automation script can be recorded and executed on multiple
devices based on cross-mobile os. This is a commercial tool and hence the subscription fees will
be charged based on services required.
Ex: Perfecto Mobile Solution , SOASTA Device Cloud lite (Free).
2. Opensource Lab- based Automation: This method involves setting up tools in a test lab
environment and leveraging simulators or physical devices to automate testing using popular
open-source tools such as Selendroid (supports only Android Native App) and Appium. (supports
Android & ios).
4 | P a g e

3. Commercial Tools: Automation Tools like SeeTest Experitest helps you to record script once
and allows to execute the script on multiple devices and cross-platform. For executing on ios
device, one may need to have MAC machine and for Windows Phone execution, user may need
Windows 8 machine. This tool also helps you to run tests on geographically connected devices
using Test cloud but again one need to pay a premium subscription fees to access the same.

Key principles in selection of Automation tool
1. Perform Tool feasibility tests, because mobile technologies and platforms vary
2. Select tools that support both platform simulators and devices, because we can mix and match
devices and emulators to optimize runs on different cross-platforms
3. Aim for automation in nonfunctional areas like Interruption and Hardware scenarios (Accelerometer)
4. Identify devices and platform support (ios,Android & Windows Phone) before Tool can be shortlisted.
5. Determine reusable functions for the features that add value to automation.
6. Ensure ROI per each mobile platform and duration of execution as part of tool consideration process.
7. Integrated execution with Test management tool and application lifecycle management.
8. Good candidates for automation are test cases that have repeated business logic, functional flows or
data-driven tests: Smoke test and build acceptance testing, regression testing, synchronization testing,
compatibility testing, GUI testing and testing non-dynamic UI components, as well as cross-platform
functional testing.