SlideShare a Scribd company logo
1 of 8
Download to read offline
Test Automation for Mobile
Applications
Ness Digital Engineering | ness.com | 1
White Paper
Case Example: Comparison and Selection of Tools
to Automate Mobile Testing
The Context
The Ness team is often involved in the development of mobile applications for
our customers. We always encourage our clients to stay agile in order to keep pace
with the ever-changing market landscape. This often includes managing frequent
updates and releases to their mobile platforms. This paper outlines the steps taken
to help one of our clients select an automated mobile testing tool and the positive
results this automation achieved.
White Paper
Ness Digital Engineering | ness.com | 2
Test Automation for Mobile Applications
Executive Summary
Problem to Be Solved
The mobile application in this example is available for multiple mobile OSs and on multiple devices.
The team follows Agile development to achieve frequent app releases encompassing new features.
Manual testing of mobile applications was causing a prolonged regression cycle which involved
different combinations of OS versions and devices. In addition, there are frequent updates to mobile
operating systems, and the list of devices keeps growing due to the constant introduction of new
devices in the market.
Frequent regression cycles not only put pressure on the company's quality team, but also led to
financial overhead and missed release deadlines. It was imperative for the company to establish
cost-effective test strategy methods to shorten the test cycle of mobile apps while maintaining high
quality. The client asked for Ness's help in defining methods they could use to automate testing.
Solution
The Ness team for the clientdesigned and built a solution to automate mobile testing based on the
open source tool Selenium Appium. The solution also used the Amazon AWS Device- Web Services ( )
Farm to eliminate dependencies on device and network availability. During our journey we evaluated
and compared various tools and finally Appium because of its benefitschose for this customer.
Benefits
The solution proved to very beneficial in reducing hours of manual test effort, including:
• Decreasing overall regression cycle time by 40%
• Decreasing overall testing cost by 30%
Additionally we’ve achieved:
• Increased regression test coverage by 30%
• Creation of low-maintenance test scripts
White Paper
Ness Digital Engineering | ness.com | 3
Test Automation for Mobile Applications
Requirements
The following table demonstrates different combinations of devices, OSs and OS versions that the
mobile testing solution needed to support.
As seen from the table, each test case has to be executed about 62 times. In addition, there are frequent
updates to mobile operating systems, and the list of devices keeps growing due to the introduction of
new devices on the market.
Tablet Custom Tablet
(v1.0)
Custom Tablet
(v2.0)
Phone iPhone iPad
Brand Customization (X)
No. of Supported Devices (Y)
Combinations (X*Y)
2 1 1 2 2 2
5 1 1 11 9 5
10 1 1 22 18 10
Total Combinations 62
Android iOS
Mobile Operating Systems
The table below shows the percentage of specific device usage for Android and iOS.
Due to time restrictions and lead time requirements for manual testing, not all of the combinations were being
tested. Before every regression cycle, a matrix was created with the most commonly used, major combinations of
devices and OS versions, as past test results had showed that outcomes did not vary much between similar
versions and devices.
To manually execute the defined matrix, the regression cycle was taking about 800 hours per cycle. Before every
release there were a minimum of 2 regression cycles. This caused lengthy regression cycles for the client that have
led to missed release deadlines and significant pressure on the quality team.
iPad Air, 3%
iPad, 3%
iPad 4, 2%
iPad3, 1.0%
iPhone 6s Plus,
4%
iPhone 6s, 4%
iPad Mini, 4%
iPhones
3rd Generation,
4%
iPhone 6, 28%
iPhone 6 Plus,
15%iPhone 5s,
14%
iPhone 5c,
7%
iPhone 4s, 5%
iPhone 5, 6%
Droid Razor,
0.17%
Tab 3 10”,
0.30% Tab3 8”, 0.20% Nexus 9,
0.20%
Nexus 10,
0.20%
Ellipsis 8, 0.20%
Nexus 5,
0.50% LG G3, 4%
Samsung S6 Edge,
5%
Samsung Note 5,
6%
Samsung S5, 29%
Samsung Note 4,
15%
Samsung S4, 13%
Samsung S6,
10%
Samsung S3, 10%
Samsung
Note 3, 6%
iOS UsageAndroid Usage
Features Considered for Tool Selection
There are many tools available (both open source and commercial) for automating mobile application
testing. Judicious choice of automation tools or frameworks is vital for the success of an automation
strategy. As an aid in tool selection, we listed key features that the automation tool would need to have
in order to automate application testing for this client.
White Paper
Ness Digital Engineering | ness.com | 4
Test Automation for Mobile Applications
Features Description
Supported Capabilities Cross Platform
Cross Browser
Reusability
Data Driven
Supported Device / OS Support for•
o iOS (iPad and iPhone)
o Android (tablet and phone)
• Generic script for both iOS and Android to save time and provide
ease of maintenance
Recorders Tool must be able to record tests whenever necessary to expedite
development. Scripts must be modifiable.
Functionality Support Multi-touch, Swipe, Drag & Drop
Zoom, Scrolling
Landscape mode
Non-Functional Support Battery consumption, Memory usage, Memory leaks, CPU utilization,
Bandwidth usage, Installation time
Identification Methods Native ID Support
Web HTML5 (DOM)
Image recognition
OCR
Device Testing Tool should be able to test a device without any changes to device
hardware - No need to jailbreak or root device
Continuous Integration Able to integrate with CI tools such as Bamboo
Reporting Able to create detailed reports of execution
Licensing Tool should be open source under open source license
Automation Strategy
Ness prepared a test strategy using automation to effectively shorten the regression cycle. The key to
success was the selection of the right tool and implementation. We selected an open-source tool, due
to the obvious benefit of no license fees. Additional benefits include:
• The framework can be expanded for any customization
• An active community exists which helps to resolve any issues
• Frequent updates are made to the tool
White Paper
Ness Digital Engineering | ness.com | 5
Test Automation for Mobile Applications
Comparison of Tools
Cross - platform
Cross - browser
Functional testing
Regression testing
User Agent testing
Load testing
Data-driven automation support
Behavioral-driven automation support
Keyword-driven support
No Jailbreak requirement
Integration with test management tool
Supported Capabilities
Category Feature List RanorexMonkeyTalk Appium Calabash
iOS
Android
Simulators/Emulators
Native
Hybrid
Mobile Web
Record & Playback
Supported Devices
Supported Mobile Apps
Scripting Capabilities
Parallel script execution
Object identification by: id
Object identification by: class
Object identification by: text
Object location verification
Object location assertion
Single or multiple repositories for different devices
Easy instrumentation with no code change
XPath Language full support
Native UI Object
Identification Methods
Text input method supported: device keyboard
Text input method supported: direct text
Text extraction: extract any text from table and run
queries on it
Text extraction: area and run queries on it
Text Object Identification
Full Functionality Support
Test Execution
Multi-touch
Swipe
Key press (tap)
Long key press (long tap)
Drag and Drop
Flick
Zoom
Scrolling
Click on security alerts
Click on system alerts
Reboot device
Includes full device inventory management,
scheduling and enforcement
Landscape mode
Parallel execution
CI integration
White Paper
Ness Digital Engineering | ness.com | 6
Test Automation for Mobile Applications
Putting Together an Automated, Mobile App
Testing Solution
Major Components of the Solution
Component Description
Selenium Selenium is a popular open-source web automation tool. It supports a
broad range of browsers, technologies and platforms. It also has a vast
number of contributors both individually and commercially.
PageFactory PageFactory is an inbuilt page object model concept. It is used to initialize
elements of a Page class without having to use 'FindElement' or
'FindElements.'
Advantages of PageFactory are:
· Easy to maintain
· Easy readability of scripts
· Reduces or eliminates duplication
· Re-usability of code
Appium Appium is an open-source tool for automating native, mobile web, and
hybrid applications on iOS and Android platforms.
The main advantage of Appium is that it allows users us to write tests
against multiple platforms (iOS, Android) using the same API, which
enables code reuse between iOS and Android test suites.
TestNG TestNG is a unit testing framework.
It helps in grouping the test cases and generating reports.
Amazon Web Services Device Farm is an app testing service to test and interact with Android,
(AWS) Device Farm iOS, and Web apps on real, physical phones and tablets that are hosted by
Amazon Web Services (AWS). AWS is used to enable remote access of
devices, create projects & device pools, upload files, and retrieve
information about devices, projects, and jobs (including test results) and
screenshots.
Maven Maven is a build automation tool. It handles compilation, distribution,
documentation and team collaboration.
Git Git is a version control system. It is helpful to maintain the history of every
version, and it makes creating a branch and commit for each new feature
more feasible.
Jenkins Jenkins is a CI tool used to run the automated tests. Jenkins has support
for Maven builds which helps in running automated tests and scheduling
the build.
The following components were used to implement an integrated, mobile app testing solution.
Challenges Encountered
1. Initial setup of Appium can be time consuming.
2. During initial execution, upload of test to the AWS Device Farm scripts was taking a long time, but
after we contacted AWS support, they resolved the problem.
3. On iOS we can only run one instance on Instruments per Mac OS, so we can only run Appium scripts
on one device per Mac machine. If we want to run our tests on multiple iOS devices at the same
time, then we would need to arrange for the same number of Mac machines, which would be a
costly affair. This limitation was resolved by executing our scripts in the AWS Device Farm.
Results
The solution proved to very beneficial in reducing hours of manual test effort, directly resulting in:
• theDecreasing regression cycle by 40%.
• sDecreasing testing cost by 30%
(Results are for Phase 1 automation. Phase 2, which would focus on automating the remainder of test
cases not covered by Phase 1, is still in progress, and the numbers should improve further.)
Statistics of Automation:
The following table summarizes the effectiveness of our solution:
White Paper
Ness Digital Engineering | ness.com | 7
Test Automation for Mobile Applications
Total regression cases 400
Test cases for automation 260
Cases automated (Phase 1) 160
Manual time for regression before automation 800 hrs
Automation execution time 0.5 hr
Manual time for regression after phase 1 automation 480 hrs
Reduction in regression cycle 40%
Results for Phase 1
Architecture and Flow Diagram:
Git Repository
Automation Architecture
Page Files Scenario Files Test Files
Repositories
Config
Files
Lab Files
Appium
AWS Device Farm
git
White Paper
8
Ness Digital Engineering | For more information, visit ness.com
© 2016 Ness Digital Engineering. All rights reserved. All other trademarks are the property of their respective owners.
WPTD0916
About the Author
Raj Bhalla is an experienced Technical Project Manager with over a decade of experience in software
development, testing and IT management across various industry sectors. He is a PMP-certified Agile
Practitioner. He has particular interest in establishing and optimizing Agile processes and has a
passion for embedding Agile principles in IT management.
About Ness Digital Engineering
Ness Digital Engineering designs and builds digital platforms and software that help organizations
engage customers, differentiate their brands, and drive revenue growth. Our customer experience
designers, software engineers and data experts partner with clients to develop roadmaps that identify
ongoing opportunities to increase the value of their digital products and services. Through agile
development of minimum viable products (MVPs), our clients can test new ideas in the market and
continually adapt to changing business conditions—giving our clients the leverage to lead market
disruption in their industries and compete more effectively to drive revenue growth.
Test Automation for Mobile Applications
We also achieved additional benefits from automation:
Simultaneous Version Testing: Different versions of the app can be tested at the same time.
CI Integration: The automation suite is integrated and configured in the Continuous Integration tool,
so it becomes a seamless part of the development environment. Automated testing is executed nightly
against the latest development build for Android and iOS, which enables early detection of faults. This
provides rapid feedback, so that if a bug is introduced into the code base, it can be identified and fixed
as soon as possible.
Two Platforms, One Script: Because a single script was developed for both iOS and Android, the
following benefits were achieved:
• Ease of development and maintenance
• Single team for automation for both iOS and Android
• sEnables finding parity issues between Android and iOS app
Increased Test Coverage: Before automation not all test cases were executed during all the regression
cycles. With automation it became feasible to execute all the cases and increase coverage.
The solution implemented can be extended for any multi-platform, mobile automation testing.
The design will not only act as a solution accelerator for future mobile projects, but it will also
generate real value.

More Related Content

What's hot

Mobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptMobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptQA Programmer
 
Mobile testing practices
Mobile testing practicesMobile testing practices
Mobile testing practicesRakesh Jha
 
Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...Perfecto Mobile
 
Discover the power of QA automation testing
Discover the power of QA automation testingDiscover the power of QA automation testing
Discover the power of QA automation testingSoftweb Solutions
 
Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Perfecto Mobile
 
Mobile applications and automation testing
Mobile applications and automation testingMobile applications and automation testing
Mobile applications and automation testingIndicThreads
 
Best Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBest Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBitbar
 
Experitest & Tech Mahindra Co-Webinar
 Experitest & Tech Mahindra Co-Webinar Experitest & Tech Mahindra Co-Webinar
Experitest & Tech Mahindra Co-WebinarExperitest
 
Testing the UI of Mobile Applications
Testing the UI of Mobile ApplicationsTesting the UI of Mobile Applications
Testing the UI of Mobile ApplicationsMarco Torchiano
 
Hp perfecto webinar - UFT Mobile
Hp perfecto webinar - UFT MobileHp perfecto webinar - UFT Mobile
Hp perfecto webinar - UFT MobilePerfecto Mobile
 
SaaS Digital Assurance Lab
SaaS Digital Assurance LabSaaS Digital Assurance Lab
SaaS Digital Assurance LabExperitest
 
Mobile Test Automation
Mobile Test AutomationMobile Test Automation
Mobile Test AutomationLee Barnes
 
The ultimate guide to mobile app testing with appium
The ultimate guide to mobile app testing with appiumThe ultimate guide to mobile app testing with appium
The ultimate guide to mobile app testing with appiumheadspin2
 
What's New with Perfecto? - Mid-Year Edition
What's New with Perfecto? - Mid-Year EditionWhat's New with Perfecto? - Mid-Year Edition
What's New with Perfecto? - Mid-Year EditionLizzy Guido (she/her)
 
App Days 2016 Munich - Mobile Applications testing by Leaware
App Days 2016 Munich - Mobile Applications testing by LeawareApp Days 2016 Munich - Mobile Applications testing by Leaware
App Days 2016 Munich - Mobile Applications testing by LeawareLeaware.com
 
TechTalk: Wind Tunnel, Personas, and Testing Real UX
TechTalk: Wind Tunnel, Personas, and Testing Real UXTechTalk: Wind Tunnel, Personas, and Testing Real UX
TechTalk: Wind Tunnel, Personas, and Testing Real UXLizzy Guido (she/her)
 
Mobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetupMobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetupPerfecto Mobile
 

What's hot (20)

Mobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptMobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.ppt
 
Mobile testing practices
Mobile testing practicesMobile testing practices
Mobile testing practices
 
Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...
 
Discover the power of QA automation testing
Discover the power of QA automation testingDiscover the power of QA automation testing
Discover the power of QA automation testing
 
Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017
 
Mobile applications and automation testing
Mobile applications and automation testingMobile applications and automation testing
Mobile applications and automation testing
 
Best Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBest Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App Testing
 
Juc oct 2014 final
Juc oct 2014 finalJuc oct 2014 final
Juc oct 2014 final
 
Experitest & Tech Mahindra Co-Webinar
 Experitest & Tech Mahindra Co-Webinar Experitest & Tech Mahindra Co-Webinar
Experitest & Tech Mahindra Co-Webinar
 
Testing the UI of Mobile Applications
Testing the UI of Mobile ApplicationsTesting the UI of Mobile Applications
Testing the UI of Mobile Applications
 
Hp perfecto webinar - UFT Mobile
Hp perfecto webinar - UFT MobileHp perfecto webinar - UFT Mobile
Hp perfecto webinar - UFT Mobile
 
SaaS Digital Assurance Lab
SaaS Digital Assurance LabSaaS Digital Assurance Lab
SaaS Digital Assurance Lab
 
Mobile Test Automation
Mobile Test AutomationMobile Test Automation
Mobile Test Automation
 
The ultimate guide to mobile app testing with appium
The ultimate guide to mobile app testing with appiumThe ultimate guide to mobile app testing with appium
The ultimate guide to mobile app testing with appium
 
Mobile App Testing Best Practices
Mobile App Testing Best PracticesMobile App Testing Best Practices
Mobile App Testing Best Practices
 
What's New with Perfecto? - Mid-Year Edition
What's New with Perfecto? - Mid-Year EditionWhat's New with Perfecto? - Mid-Year Edition
What's New with Perfecto? - Mid-Year Edition
 
App Days 2016 Munich - Mobile Applications testing by Leaware
App Days 2016 Munich - Mobile Applications testing by LeawareApp Days 2016 Munich - Mobile Applications testing by Leaware
App Days 2016 Munich - Mobile Applications testing by Leaware
 
TechTalk: Wind Tunnel, Personas, and Testing Real UX
TechTalk: Wind Tunnel, Personas, and Testing Real UXTechTalk: Wind Tunnel, Personas, and Testing Real UX
TechTalk: Wind Tunnel, Personas, and Testing Real UX
 
Mobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetupMobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetup
 
Wearables meetup
Wearables meetupWearables meetup
Wearables meetup
 

Viewers also liked

SharePoint as digital service platform
SharePoint as digital service platformSharePoint as digital service platform
SharePoint as digital service platformNir Levy
 
KHP AR 2014-15 English FINAL
KHP AR 2014-15 English FINALKHP AR 2014-15 English FINAL
KHP AR 2014-15 English FINALJamie Slater
 
Inform tp-2-biología-1
Inform tp-2-biología-1Inform tp-2-biología-1
Inform tp-2-biología-1Mari Calgaro
 
iBe A State of Digital Innovation Report 2015
iBe A State of Digital Innovation Report 2015iBe A State of Digital Innovation Report 2015
iBe A State of Digital Innovation Report 2015Phil Falato
 
TCE Apresentação Univali | Pesquisa de Satisfação do Cliente
TCE Apresentação Univali | Pesquisa de Satisfação do ClienteTCE Apresentação Univali | Pesquisa de Satisfação do Cliente
TCE Apresentação Univali | Pesquisa de Satisfação do ClienteValter Fernandes
 
Global Private Equity in Israel: Where Innovation Meets Capital
Global Private Equity in Israel: Where Innovation Meets CapitalGlobal Private Equity in Israel: Where Innovation Meets Capital
Global Private Equity in Israel: Where Innovation Meets CapitalKevin Crosby
 
E trading platform for insurance
E trading platform for insurance E trading platform for insurance
E trading platform for insurance supriyo12
 
Kids Help Phone 2013-14 Impact Report
Kids Help Phone 2013-14 Impact ReportKids Help Phone 2013-14 Impact Report
Kids Help Phone 2013-14 Impact ReportJulia Morgan
 

Viewers also liked (11)

Improving Safety Inside the Unattended Car
Improving Safety Inside the Unattended Car   Improving Safety Inside the Unattended Car
Improving Safety Inside the Unattended Car
 
SharePoint as digital service platform
SharePoint as digital service platformSharePoint as digital service platform
SharePoint as digital service platform
 
KHP AR 2014-15 English FINAL
KHP AR 2014-15 English FINALKHP AR 2014-15 English FINAL
KHP AR 2014-15 English FINAL
 
Top100 gs100 list
Top100 gs100 listTop100 gs100 list
Top100 gs100 list
 
Inform tp-2-biología-1
Inform tp-2-biología-1Inform tp-2-biología-1
Inform tp-2-biología-1
 
iBe A State of Digital Innovation Report 2015
iBe A State of Digital Innovation Report 2015iBe A State of Digital Innovation Report 2015
iBe A State of Digital Innovation Report 2015
 
מצגת ערים חכמות
מצגת ערים חכמות מצגת ערים חכמות
מצגת ערים חכמות
 
TCE Apresentação Univali | Pesquisa de Satisfação do Cliente
TCE Apresentação Univali | Pesquisa de Satisfação do ClienteTCE Apresentação Univali | Pesquisa de Satisfação do Cliente
TCE Apresentação Univali | Pesquisa de Satisfação do Cliente
 
Global Private Equity in Israel: Where Innovation Meets Capital
Global Private Equity in Israel: Where Innovation Meets CapitalGlobal Private Equity in Israel: Where Innovation Meets Capital
Global Private Equity in Israel: Where Innovation Meets Capital
 
E trading platform for insurance
E trading platform for insurance E trading platform for insurance
E trading platform for insurance
 
Kids Help Phone 2013-14 Impact Report
Kids Help Phone 2013-14 Impact ReportKids Help Phone 2013-14 Impact Report
Kids Help Phone 2013-14 Impact Report
 

Similar to Automate Mobile Testing

Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development Skytap Cloud
 
Decoding Appium No-Code Test Automation With HeadSpin.pdf
Decoding Appium No-Code Test Automation With HeadSpin.pdfDecoding Appium No-Code Test Automation With HeadSpin.pdf
Decoding Appium No-Code Test Automation With HeadSpin.pdfkalichargn70th171
 
The Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringThe Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringMobilePundits
 
What are the top 10 performance testing tools
What are the top 10 performance testing toolsWhat are the top 10 performance testing tools
What are the top 10 performance testing toolsTestingXperts
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Building And Executing Test Cases with Appium and Various Test Frameworks.pdf
Building And Executing Test Cases with Appium and Various Test Frameworks.pdfBuilding And Executing Test Cases with Appium and Various Test Frameworks.pdf
Building And Executing Test Cases with Appium and Various Test Frameworks.pdfpCloudy
 
Case study - Test Automation of a Mobile Application
Case study - Test Automation of a Mobile ApplicationCase study - Test Automation of a Mobile Application
Case study - Test Automation of a Mobile ApplicationOak Systems
 
manual & automation testing
manual & automation testingmanual & automation testing
manual & automation testingBharat Dawar
 
Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020Alaina Carter
 
Cloud mobile automation testing services.pdf
Cloud mobile automation testing services.pdfCloud mobile automation testing services.pdf
Cloud mobile automation testing services.pdfTestrig Technologies
 
Can We Deliver Mobile Apps Continuously?
Can We Deliver Mobile Apps Continuously?Can We Deliver Mobile Apps Continuously?
Can We Deliver Mobile Apps Continuously?Dan Waters
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...DevDay.org
 
Basics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdfBasics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdfpcloudy2
 
Mobile Automation Framework (MAF).
Mobile Automation Framework (MAF).Mobile Automation Framework (MAF).
Mobile Automation Framework (MAF).Mindtree Ltd.
 
Continuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps DeliveryContinuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps DeliveryPerfecto Mobile
 
Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020Marianne Harness
 

Similar to Automate Mobile Testing (20)

Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development
 
Decoding Appium No-Code Test Automation With HeadSpin.pdf
Decoding Appium No-Code Test Automation With HeadSpin.pdfDecoding Appium No-Code Test Automation With HeadSpin.pdf
Decoding Appium No-Code Test Automation With HeadSpin.pdf
 
The Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringThe Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and Monitoring
 
What are the top 10 performance testing tools
What are the top 10 performance testing toolsWhat are the top 10 performance testing tools
What are the top 10 performance testing tools
 
Appium Testing.pdf
Appium Testing.pdfAppium Testing.pdf
Appium Testing.pdf
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Building And Executing Test Cases with Appium and Various Test Frameworks.pdf
Building And Executing Test Cases with Appium and Various Test Frameworks.pdfBuilding And Executing Test Cases with Appium and Various Test Frameworks.pdf
Building And Executing Test Cases with Appium and Various Test Frameworks.pdf
 
Case study - Test Automation of a Mobile Application
Case study - Test Automation of a Mobile ApplicationCase study - Test Automation of a Mobile Application
Case study - Test Automation of a Mobile Application
 
manual & automation testing
manual & automation testingmanual & automation testing
manual & automation testing
 
Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020
 
SynapseIndia mobile apps
SynapseIndia mobile appsSynapseIndia mobile apps
SynapseIndia mobile apps
 
Cloud mobile automation testing services.pdf
Cloud mobile automation testing services.pdfCloud mobile automation testing services.pdf
Cloud mobile automation testing services.pdf
 
Can We Deliver Mobile Apps Continuously?
Can We Deliver Mobile Apps Continuously?Can We Deliver Mobile Apps Continuously?
Can We Deliver Mobile Apps Continuously?
 
Kasi Viswanath
Kasi ViswanathKasi Viswanath
Kasi Viswanath
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
 
Basics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdfBasics of Scriptless Automation for Web and Mobile Apps (1).pdf
Basics of Scriptless Automation for Web and Mobile Apps (1).pdf
 
Mobile Automation Framework (MAF).
Mobile Automation Framework (MAF).Mobile Automation Framework (MAF).
Mobile Automation Framework (MAF).
 
Mobile Testing in the Cloud
Mobile Testing in the CloudMobile Testing in the Cloud
Mobile Testing in the Cloud
 
Continuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps DeliveryContinuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps Delivery
 
Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020Top 10 Automation Testing Tools in 2020
Top 10 Automation Testing Tools in 2020
 

Recently uploaded

Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsThierry TROUIN ☁
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxellan12
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Standkumarajju5765
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebJames Anderson
 
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663Call Girls Mumbai
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
 
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...sonatiwari757
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.soniya singh
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts servicesonalikaur4
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsstephieert
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGAPNIC
 

Recently uploaded (20)

Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with Flows
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
 
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
 
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girls
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOG
 

Automate Mobile Testing

  • 1. Test Automation for Mobile Applications Ness Digital Engineering | ness.com | 1 White Paper Case Example: Comparison and Selection of Tools to Automate Mobile Testing The Context The Ness team is often involved in the development of mobile applications for our customers. We always encourage our clients to stay agile in order to keep pace with the ever-changing market landscape. This often includes managing frequent updates and releases to their mobile platforms. This paper outlines the steps taken to help one of our clients select an automated mobile testing tool and the positive results this automation achieved.
  • 2. White Paper Ness Digital Engineering | ness.com | 2 Test Automation for Mobile Applications Executive Summary Problem to Be Solved The mobile application in this example is available for multiple mobile OSs and on multiple devices. The team follows Agile development to achieve frequent app releases encompassing new features. Manual testing of mobile applications was causing a prolonged regression cycle which involved different combinations of OS versions and devices. In addition, there are frequent updates to mobile operating systems, and the list of devices keeps growing due to the constant introduction of new devices in the market. Frequent regression cycles not only put pressure on the company's quality team, but also led to financial overhead and missed release deadlines. It was imperative for the company to establish cost-effective test strategy methods to shorten the test cycle of mobile apps while maintaining high quality. The client asked for Ness's help in defining methods they could use to automate testing. Solution The Ness team for the clientdesigned and built a solution to automate mobile testing based on the open source tool Selenium Appium. The solution also used the Amazon AWS Device- Web Services ( ) Farm to eliminate dependencies on device and network availability. During our journey we evaluated and compared various tools and finally Appium because of its benefitschose for this customer. Benefits The solution proved to very beneficial in reducing hours of manual test effort, including: • Decreasing overall regression cycle time by 40% • Decreasing overall testing cost by 30% Additionally we’ve achieved: • Increased regression test coverage by 30% • Creation of low-maintenance test scripts
  • 3. White Paper Ness Digital Engineering | ness.com | 3 Test Automation for Mobile Applications Requirements The following table demonstrates different combinations of devices, OSs and OS versions that the mobile testing solution needed to support. As seen from the table, each test case has to be executed about 62 times. In addition, there are frequent updates to mobile operating systems, and the list of devices keeps growing due to the introduction of new devices on the market. Tablet Custom Tablet (v1.0) Custom Tablet (v2.0) Phone iPhone iPad Brand Customization (X) No. of Supported Devices (Y) Combinations (X*Y) 2 1 1 2 2 2 5 1 1 11 9 5 10 1 1 22 18 10 Total Combinations 62 Android iOS Mobile Operating Systems The table below shows the percentage of specific device usage for Android and iOS. Due to time restrictions and lead time requirements for manual testing, not all of the combinations were being tested. Before every regression cycle, a matrix was created with the most commonly used, major combinations of devices and OS versions, as past test results had showed that outcomes did not vary much between similar versions and devices. To manually execute the defined matrix, the regression cycle was taking about 800 hours per cycle. Before every release there were a minimum of 2 regression cycles. This caused lengthy regression cycles for the client that have led to missed release deadlines and significant pressure on the quality team. iPad Air, 3% iPad, 3% iPad 4, 2% iPad3, 1.0% iPhone 6s Plus, 4% iPhone 6s, 4% iPad Mini, 4% iPhones 3rd Generation, 4% iPhone 6, 28% iPhone 6 Plus, 15%iPhone 5s, 14% iPhone 5c, 7% iPhone 4s, 5% iPhone 5, 6% Droid Razor, 0.17% Tab 3 10”, 0.30% Tab3 8”, 0.20% Nexus 9, 0.20% Nexus 10, 0.20% Ellipsis 8, 0.20% Nexus 5, 0.50% LG G3, 4% Samsung S6 Edge, 5% Samsung Note 5, 6% Samsung S5, 29% Samsung Note 4, 15% Samsung S4, 13% Samsung S6, 10% Samsung S3, 10% Samsung Note 3, 6% iOS UsageAndroid Usage
  • 4. Features Considered for Tool Selection There are many tools available (both open source and commercial) for automating mobile application testing. Judicious choice of automation tools or frameworks is vital for the success of an automation strategy. As an aid in tool selection, we listed key features that the automation tool would need to have in order to automate application testing for this client. White Paper Ness Digital Engineering | ness.com | 4 Test Automation for Mobile Applications Features Description Supported Capabilities Cross Platform Cross Browser Reusability Data Driven Supported Device / OS Support for• o iOS (iPad and iPhone) o Android (tablet and phone) • Generic script for both iOS and Android to save time and provide ease of maintenance Recorders Tool must be able to record tests whenever necessary to expedite development. Scripts must be modifiable. Functionality Support Multi-touch, Swipe, Drag & Drop Zoom, Scrolling Landscape mode Non-Functional Support Battery consumption, Memory usage, Memory leaks, CPU utilization, Bandwidth usage, Installation time Identification Methods Native ID Support Web HTML5 (DOM) Image recognition OCR Device Testing Tool should be able to test a device without any changes to device hardware - No need to jailbreak or root device Continuous Integration Able to integrate with CI tools such as Bamboo Reporting Able to create detailed reports of execution Licensing Tool should be open source under open source license Automation Strategy Ness prepared a test strategy using automation to effectively shorten the regression cycle. The key to success was the selection of the right tool and implementation. We selected an open-source tool, due to the obvious benefit of no license fees. Additional benefits include: • The framework can be expanded for any customization • An active community exists which helps to resolve any issues • Frequent updates are made to the tool
  • 5. White Paper Ness Digital Engineering | ness.com | 5 Test Automation for Mobile Applications Comparison of Tools Cross - platform Cross - browser Functional testing Regression testing User Agent testing Load testing Data-driven automation support Behavioral-driven automation support Keyword-driven support No Jailbreak requirement Integration with test management tool Supported Capabilities Category Feature List RanorexMonkeyTalk Appium Calabash iOS Android Simulators/Emulators Native Hybrid Mobile Web Record & Playback Supported Devices Supported Mobile Apps Scripting Capabilities Parallel script execution Object identification by: id Object identification by: class Object identification by: text Object location verification Object location assertion Single or multiple repositories for different devices Easy instrumentation with no code change XPath Language full support Native UI Object Identification Methods Text input method supported: device keyboard Text input method supported: direct text Text extraction: extract any text from table and run queries on it Text extraction: area and run queries on it Text Object Identification Full Functionality Support Test Execution Multi-touch Swipe Key press (tap) Long key press (long tap) Drag and Drop Flick Zoom Scrolling Click on security alerts Click on system alerts Reboot device Includes full device inventory management, scheduling and enforcement Landscape mode Parallel execution CI integration
  • 6. White Paper Ness Digital Engineering | ness.com | 6 Test Automation for Mobile Applications Putting Together an Automated, Mobile App Testing Solution Major Components of the Solution Component Description Selenium Selenium is a popular open-source web automation tool. It supports a broad range of browsers, technologies and platforms. It also has a vast number of contributors both individually and commercially. PageFactory PageFactory is an inbuilt page object model concept. It is used to initialize elements of a Page class without having to use 'FindElement' or 'FindElements.' Advantages of PageFactory are: · Easy to maintain · Easy readability of scripts · Reduces or eliminates duplication · Re-usability of code Appium Appium is an open-source tool for automating native, mobile web, and hybrid applications on iOS and Android platforms. The main advantage of Appium is that it allows users us to write tests against multiple platforms (iOS, Android) using the same API, which enables code reuse between iOS and Android test suites. TestNG TestNG is a unit testing framework. It helps in grouping the test cases and generating reports. Amazon Web Services Device Farm is an app testing service to test and interact with Android, (AWS) Device Farm iOS, and Web apps on real, physical phones and tablets that are hosted by Amazon Web Services (AWS). AWS is used to enable remote access of devices, create projects & device pools, upload files, and retrieve information about devices, projects, and jobs (including test results) and screenshots. Maven Maven is a build automation tool. It handles compilation, distribution, documentation and team collaboration. Git Git is a version control system. It is helpful to maintain the history of every version, and it makes creating a branch and commit for each new feature more feasible. Jenkins Jenkins is a CI tool used to run the automated tests. Jenkins has support for Maven builds which helps in running automated tests and scheduling the build. The following components were used to implement an integrated, mobile app testing solution.
  • 7. Challenges Encountered 1. Initial setup of Appium can be time consuming. 2. During initial execution, upload of test to the AWS Device Farm scripts was taking a long time, but after we contacted AWS support, they resolved the problem. 3. On iOS we can only run one instance on Instruments per Mac OS, so we can only run Appium scripts on one device per Mac machine. If we want to run our tests on multiple iOS devices at the same time, then we would need to arrange for the same number of Mac machines, which would be a costly affair. This limitation was resolved by executing our scripts in the AWS Device Farm. Results The solution proved to very beneficial in reducing hours of manual test effort, directly resulting in: • theDecreasing regression cycle by 40%. • sDecreasing testing cost by 30% (Results are for Phase 1 automation. Phase 2, which would focus on automating the remainder of test cases not covered by Phase 1, is still in progress, and the numbers should improve further.) Statistics of Automation: The following table summarizes the effectiveness of our solution: White Paper Ness Digital Engineering | ness.com | 7 Test Automation for Mobile Applications Total regression cases 400 Test cases for automation 260 Cases automated (Phase 1) 160 Manual time for regression before automation 800 hrs Automation execution time 0.5 hr Manual time for regression after phase 1 automation 480 hrs Reduction in regression cycle 40% Results for Phase 1 Architecture and Flow Diagram: Git Repository Automation Architecture Page Files Scenario Files Test Files Repositories Config Files Lab Files Appium AWS Device Farm git
  • 8. White Paper 8 Ness Digital Engineering | For more information, visit ness.com © 2016 Ness Digital Engineering. All rights reserved. All other trademarks are the property of their respective owners. WPTD0916 About the Author Raj Bhalla is an experienced Technical Project Manager with over a decade of experience in software development, testing and IT management across various industry sectors. He is a PMP-certified Agile Practitioner. He has particular interest in establishing and optimizing Agile processes and has a passion for embedding Agile principles in IT management. About Ness Digital Engineering Ness Digital Engineering designs and builds digital platforms and software that help organizations engage customers, differentiate their brands, and drive revenue growth. Our customer experience designers, software engineers and data experts partner with clients to develop roadmaps that identify ongoing opportunities to increase the value of their digital products and services. Through agile development of minimum viable products (MVPs), our clients can test new ideas in the market and continually adapt to changing business conditions—giving our clients the leverage to lead market disruption in their industries and compete more effectively to drive revenue growth. Test Automation for Mobile Applications We also achieved additional benefits from automation: Simultaneous Version Testing: Different versions of the app can be tested at the same time. CI Integration: The automation suite is integrated and configured in the Continuous Integration tool, so it becomes a seamless part of the development environment. Automated testing is executed nightly against the latest development build for Android and iOS, which enables early detection of faults. This provides rapid feedback, so that if a bug is introduced into the code base, it can be identified and fixed as soon as possible. Two Platforms, One Script: Because a single script was developed for both iOS and Android, the following benefits were achieved: • Ease of development and maintenance • Single team for automation for both iOS and Android • sEnables finding parity issues between Android and iOS app Increased Test Coverage: Before automation not all test cases were executed during all the regression cycles. With automation it became feasible to execute all the cases and increase coverage. The solution implemented can be extended for any multi-platform, mobile automation testing. The design will not only act as a solution accelerator for future mobile projects, but it will also generate real value.