• No results found

Mobile Test Automation Framework

N/A
N/A
Protected

Academic year: 2021

Share "Mobile Test Automation Framework"

Copied!
24
0
0

Loading.... (view fulltext now)

Full text

(1)

Mobile Test Automation

Framework

Shankar Garg

(2)

• Problem Statement

• Features of Test

Automation Framework

• Tech stack and why

• Demo

• Did we still miss something

• Page Objects

(3)
(4)

• Back in the day, one bad customer experience would spread via word-of-mouth and reach few Customers.

Thanks to Social Media platforms like Twitter ,

Facebook etc. however, that same word-of-mouth

now travels at the speed of light and reaches million users.

The other major difference is App Store ratings. Imagine if a poor review were stamped directly on the packing of a product.

• These Social Media Ratings and Likes can prove to be a make or break for the brand and product.

(5)

Challenges for Testing Teams

• Mobile Test Teams have to repeat the entire

test cycle for each of the following:

• Multiple OS – Android and iOS

(6)

Challenges for Mobile Test Teams

• Lot of Regression Testing.

• Frequent application releases:

• Ease of upgrading apps over the air

• Increased user expectations about

quicker releases (for bug fixes and new

features)

• OS updates.

Test teams are continuously tasked

with testing entire applications faster

and more often.

(7)

Test Automation - Appium

• Appium has made life easy for Mobile

Automation Teams.

• Appium has enabled test teams to use the

same code to test on

• Multiple OS

(8)

Challenges for Automation Teams

• Although Appium Solved lot of Mobile

Specific problems but problems specific

to Framework design still remain.

• Maintainability

• Reusability

(9)

What about Agile Testing ?

• With the advent of Agile practices,

Behavior Driven Development/Testing has

also gained more popularity.

(10)

Mobile Test Automation Framework

-Features

Non Technical people can help in Test Automation.

Requirements are directly converted into Test cases ( to eliminate difference in understanding of Dev and QA)

• Supports multiple OS i.e. iOS, Android etc. ( Same tool can be used to write test case for iOS and Android)

Inter portability of same test cases on Multiple platform ( Same test case can be run for iOS and Android).

Maintainability ( How easy it is to change/update a test case)

Re-usability ( How easy it is to use existing code to write new test cases)

(11)

What’s the Solution:

• No tool alone can solve the problem mentioned

above.

• Appium alone cannot solve these challenges

• Frequent UI/functionality updates.

• Implementing behavior driven development &

• What is needed is, the combination of tools which

can address these problems when combined

(12)

Tech Stack

• Java

• Maven

• Appium

• Cucumber

• Git

• Jenkins

(13)

Why Cucumber?

• Cucumber Enables Non Technical team members to help in Test Automation (by writing feature files).

• Cucumber can be implemented in multiple languages. i.e. Java, Ruby and JavaScript.

• Cucumber can be used to implement projects in wide

business areas like enterprise web, Mobile, Web Services.

(14)

Why Appium?

• Support for multiple platforms iOS, Android and Firefox OS.

• Support for Native, Web and Hybrid Applications.

• Can be implemented in multiple languages Java, PHP, Python, Ruby, C# etc.

No Additional Library added to AUT.

• Can be implemented with any Testing Framework i.e. Junit, TestNG, Cucumber etc.

(15)

Demo

• Application Under Test • Project Strucutre • Feature File • Glue Code • Hooks • DriverFactory.java • Appium Code

(16)

What we have achieved

Non Technical people can help in Test Automation.

Requirements are directly converted into Test cases ( to eliminate difference in understanding of Dev and QA)

• Supports multiple OS i.e. iOS, Android etc. ( Same tool can be used to write test case for iOS and Android)

Inter portability of same test cases on Multiple platform ( Same test case can be run for iOS and Android).

• Maintainability ( How easy it is to change/update a test case)

• Re-usability ( How easy it is to use existing code to write new test cases)

(17)

Is there a problem still?

Locators:

• are spread across file and if some one needs to change a locator then he will have to make changes

at multiple places.

• we face a risk of some locators not being updated at all. • To know at what all places the particular locator was

defined is the biggest challenge.

Scope :There is no scope defined for a file, it may contain function for entire application or for some part only. if a

(18)

Page Objects:

Framework design approach

for maintaining &

accessing components & controls spread across

test scenarios.

• Page Object creates a

DSL

for our tests.

• if something changes on the page we don't need

to change the test, we just need to update the

object that represents the page.

(19)

Page Objects - Guidelines

• Each Page object

scope

will be limited to one

page of the application only.

All locators

related to that page will be defined in

the page object ( all locators will be grouped at

one place, possibly on the Top so that it is easy to

find and update these).

All behaviors

associated to a page will be

(20)

Page Objects –Benefits

• The beauty of these files is that just by looking at

the code, you can relate for which part of the

application these files belong to.

• How easy it becomes to change and at the same

time how easy it is to add new functionality.

(21)

What we have achieved

Non Technical people can help in Test Automation.

Requirements are directly converted into Test cases ( to eliminate difference in understanding of Dev and QA)

• Supports multiple OS i.e. iOS, Android etc. ( Same tool can be used to write test case for iOS and Android)

Inter portability of same test cases on Multiple platform ( Same test case can be run for iOS and Android).

Maintainability ( How easy it is to change/update a test case)

(22)

Limitations?

To do

(23)
(24)

References

Related documents

prevalence of obesity among the sampled women. The contribution of chapter three was in utilising the research objectives to investigate if nutrition transition existed in

Nonetheless, gendered business history kept on being treated as marginal and, for example, no chapter of The Oxford Handbook of Business History (2008) was devoted to

contacts formed only in the native (pink) or activated (green) register).. The activated Rec dimer allows formation of a catalytically competent GGDEF dimer. a) Changes in

Refrigerator (w/freezer), stove, dishwasher, microwave, coffeemaker, miscella- neous cups and

The purpose of this paper is to explain where vulnerabilities within a HMI/SCADA system may lie, describe how the inherent security of system designs minimize some risks, outline

It has previously been assumed that the introduction of an electron withdrawing group onto a pyrrole nitrogen, as in 1.11, suppresses the formation of

This course will help attendees gain a thorough understanding of SQF concepts, principles and application requirements enabling the implementation of an effective Food Safety