SlideShare a Scribd company logo
1 of 35
TOP BEST PRACTICES FOR

SUCCESSFUL MOBILE TEST AUTOMATION

@fredberinger
SOMETHING FOR YOU TO TAKE BACK HOME
MOBILE TEST AUTOMATION IS HARD
EXPECTATION
• 
• 
• 
• 

It is as difficult as developing a good mobile app
It is a software project by itself
It is not optional in mobile
You will probably fail before you succeed
#1 - SET THE RIGHT GOALS
AUTOMATION OBJECTIVES
• 
• 
• 
• 
• 

Continuous feedback to fix bugs faster 
Enable new activities
Increase test coverage
Raise confidence
Better customer support
#2 – TRACK YOUR OBJECTIVES

IF IT IS NOT MEASURED, IT DOESN’T EXIST
SET YOUR OWN METRICS
• 
• 
• 
• 


Turnaround time for fixes
Customer satisfaction on app store
Lower number of bugs on production
EMET (Equivalent Manual Execution Test)
ACTIONABLE TEST INTELLIGENCE
• 
• 
• 
• 
• 
• 


Part of the automation framework
Available and highly visible to everyone
Establish a baseline and track ROI
Take costs into account (Value=Benefit-cost)
Too many metrics can hurt
Rinse and repeat until you get it right
#4

BUT NOT ALL THE TESTS!
MISTER JENKINS IN YOUR FRIEND
• 
• 
• 
• 
• 
• 
• 
• 



Automate your build
Automate your app deployment
Automate your environment deployment
Automate your tear down
Automate your test execution
Automate your reporting
Automate your metrics tracking
Automate your communication
#5 – AUTOMATE ASAP

BUT BUILD THE FOUNDATION FIRST
Careful planning
•  Plan your Automation infrastructure

•  Cloud, on-premise, devices connectivity, app deployment, data
aggregation, reporting, etc.

•  Pick your automation tool wisely
•  Start small and grow
•  Don’t hesitate to pause tests building activity
#6 – PICK THE RIGHT TESTS TO AUTOMATE

AND I CLEARLY DON’T HAVE A GOOD PICTURE FOR THIS SLIDE
ANALYZE THE RISK OF FAILURE
R(c)=P(c) * I(c)
Probability
•  Code Complexity
•  Changed Areas
•  Affected Interfaces
•  New Technology
•  Component Maturity

Impact
•  Financial
•  Reputation
•  Legal
•  Security
•  Loss of Customers
#7 – WHERE TO RUN TESTS

HINT: 0% USERS RUN YOUR APP ON A SIMULATOR
SIMULATOR VS REAL DEVICES

•  Pros
•  Cheap
•  Integrated with IDE
•  Cons
•  Not testing on actual platform.
What if the test pass? What’s
next?
•  Network is different
•  OS is different (stock)
•  Can’t simulate real hardware
(CPU, Memory, etc.) Not fit for
mobile performance

•  Pros
•  Reproduce real gestures
•  Real results, no false negative
•  Can test under OEM
customization
•  Fit for mobile performance
•  Cons
•  Need to be managed (device
Cloud helps!)
UNDERSTAND YOUR MARKET

74% iOS7
HAVING TROUBLE WITH ANDROID
#8 – BUILD EFFICIENT TESTS

SIZE MATTERS!!
S.F.I.R.S.T.R
• 
• 
• 
• 
• 
• 
• 

Small – Easier to understand & Fix
Fast – Parallel execution for faster feedback
Independent – Can run any subsets in any order
Repeatable – Tests get the same result every time
Self-Checking – No human checking
Timely – Should be written in parallel with dev
Reusable – To avoid maintenance nightmares
#8 – BUILD TESTABILITY

ASK KINDLY …
WHICH IS BETTER?
//TiUIScrollView[@touchTestId='mfaSiteKeysignOn_securityPhraseWindow_ScrollView']/
TiUIScrollViewImpl/UIView/TiUIView[.//UILabel[@text='If
you don't recognize your personalized security image,
don't enter your password.']]/TiUITextField/TiTextField

XPATH

text=blah

TEXT
classname=TiTextField[1]

INDEXED OBJECT
id=mfaSiteKey-siteKey_Password_Input

UNIQUE ID

• 
• 
• 
• 

Build more reliable tests with unique IDs
Lower maintenance cost
Test early
A non-optional investment
# 9 - DATA IS YOUR FRIEND
BE DATA-DRIVEN
• 
• 
• 
• 

Increase test coverage FAST
Easy to add, remove and configure tests
Reduce the number of tests to maintain
Separation of Tests and Datas
#10 – USE RELIABLE WAITS

FORGET ABOUT TIME DELAYS!
USE RELIABLE AND INTELLIGENT WAITS
•  Use object visibility to manage the flow of the test
•  Never use time delays to manage back-end variability
•  Never use time delays to account for device
performance
•  Spend time finding the right locator to wait on
•  Run your test 100 times before claiming success
#11 – LEVERAGE FUNCTIONAL TESTS FOR PERFORMANCE

YOU GET THE PICTURE
COVER ALL YOUR BASES
No backend connection
Native Apps
CPU
Battery
Memory
Transaction timing

Web
browser
users

CPU

Stress tests
Endurance tests
Load test

Battery
Memory
Transaction timing

Mobile
browser
users

Native app
users

Response time

Mobile Web Apps
Load
Balancer

Data traffic
HTTP(S)
UDP
WebSocket

Cache

Web
Server
Web
Server

Shared web &
mobile infrastructure

App
Server
App
Server
Database
#12 – BUILD THE RIGHT TEAM
LEAN AND EFFICIENT
•  Quality Software Engineers

•  Automation Framework ie. CI, Cloud, Pyton, Perl, Web, everything

•  Automation Architect

•  What tests to automate? Identify reusable components,
Metrics, ROI, everything

•  Automation Engineer

•  Build automated tests, everything
•  Expert in automation and knowledge of mobile apps dev

•  Test Engineer

•  Build tests, everything
o  First End-to-End Mobile App Test Platform
•  First Cloud-Based Load Testing Solution
•  First Global Test Cloud (17 Countries, 100 Cities)
•  First Mobile Test Automation “Platform”
•  First real time RUM for web and mobile

o  Over 350 Global Corporate Customers
•  10,000 Mobile Developers and Testers use TouchTest
•  Over 1,000 Mobile and Web Apps are Tested with TouchTest 

o  Award Winning & Patented Technology 
•  Named by Wall Street Journal Top 50 Hottest Companies three years running
•  Gartner Visionary Leader 

© 2012 SOASTA. All rights reserved.

May 22, 2012

33
ü 
ü 
ü 
ü 
ü 

Precision record and Playback
iOS, Android, Native/Hybrid/Mobile Web
100+ Built-in components
Jenkins integration
Free forever for 1 device

TouchTest Lite

Download it FREE today!
http://www.soasta.com/free
TOP BEST PRACTICES FOR

SUCCESSFUL MOBILE TEST AUTOMATION
QUESTIONS?

twitter.com/fredberinger
fberinger@soasta.com
http://www.fredberinger.com

More Related Content

What's hot

Appium meet up noida
Appium meet up noidaAppium meet up noida
Appium meet up noidaAmit Rawat
 
Mobile Test Automation - Appium
Mobile Test Automation - AppiumMobile Test Automation - Appium
Mobile Test Automation - AppiumMaria Machlowska
 
Appium - test automation for mobile apps
Appium - test automation for mobile appsAppium - test automation for mobile apps
Appium - test automation for mobile appsAleksejs Trescalins
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With AppiumKnoldus Inc.
 
Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?Zado Technologies
 
Appium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriverAppium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriverAndrii Dzynia
 
[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA Team[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA TeamSrijan Technologies
 
Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)Sauce Labs
 
Selenium training
Selenium trainingSelenium training
Selenium trainingShivaraj R
 
Everything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumEverything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumLizzy Guido (she/her)
 
Getting started with appium
Getting started with appiumGetting started with appium
Getting started with appiumPratik Patel
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaEdureka!
 
Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)danielputerman
 
Appium: Automation for Mobile Apps
Appium: Automation for Mobile AppsAppium: Automation for Mobile Apps
Appium: Automation for Mobile AppsSauce Labs
 
Appium tutorial| Appium Training
Appium tutorial| Appium Training Appium tutorial| Appium Training
Appium tutorial| Appium Training QA Masters
 
Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions		Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions Sauce Labs
 
Android UI Testing with Appium
Android UI Testing with AppiumAndroid UI Testing with Appium
Android UI Testing with AppiumLuke Maung
 
Cross platform test automation using Appium
Cross platform test automation using AppiumCross platform test automation using Appium
Cross platform test automation using AppiumJatin Bhasin
 

What's hot (20)

Appium meet up noida
Appium meet up noidaAppium meet up noida
Appium meet up noida
 
Mobile Test Automation - Appium
Mobile Test Automation - AppiumMobile Test Automation - Appium
Mobile Test Automation - Appium
 
Automated UI Testing Frameworks
Automated UI Testing FrameworksAutomated UI Testing Frameworks
Automated UI Testing Frameworks
 
Appium - test automation for mobile apps
Appium - test automation for mobile appsAppium - test automation for mobile apps
Appium - test automation for mobile apps
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With Appium
 
Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?
 
Appium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriverAppium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriver
 
[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA Team[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA Team
 
Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)
 
Selenium training
Selenium trainingSelenium training
Selenium training
 
Everything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumEverything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and Selenium
 
Getting started with appium
Getting started with appiumGetting started with appium
Getting started with appium
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | Edureka
 
Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)
 
Appium: Automation for Mobile Apps
Appium: Automation for Mobile AppsAppium: Automation for Mobile Apps
Appium: Automation for Mobile Apps
 
Appium tutorial| Appium Training
Appium tutorial| Appium Training Appium tutorial| Appium Training
Appium tutorial| Appium Training
 
Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions		Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions
 
Appium solution
Appium solutionAppium solution
Appium solution
 
Android UI Testing with Appium
Android UI Testing with AppiumAndroid UI Testing with Appium
Android UI Testing with Appium
 
Cross platform test automation using Appium
Cross platform test automation using AppiumCross platform test automation using Appium
Cross platform test automation using Appium
 

Similar to Top Best Practices for Successful Mobile Test Automation

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
 
Use Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test AutomationUse Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test AutomationClever Moe
 
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test AutomationSTARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test AutomationClever Moe
 
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...AppDynamics
 
Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Clever Moe
 
Best Practices in Mobile CI (webinar)
Best Practices in Mobile CI (webinar)Best Practices in Mobile CI (webinar)
Best Practices in Mobile CI (webinar)Sauce Labs
 
Zen Test Labs Mobile Application Testing
Zen Test Labs Mobile Application TestingZen Test Labs Mobile Application Testing
Zen Test Labs Mobile Application TestingZen Test Labs
 
Agile Mobile Testing Workshop
Agile Mobile Testing WorkshopAgile Mobile Testing Workshop
Agile Mobile Testing WorkshopNaresh Jain
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingSun Technlogies
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing Shivaraj R
 
Mobile apps that win
Mobile apps that winMobile apps that win
Mobile apps that winDellFoglight
 
Mobile testing practices
Mobile testing practicesMobile testing practices
Mobile testing practicesRakesh Jha
 
Automated Testing Using Selenium
Automated Testing Using SeleniumAutomated Testing Using Selenium
Automated Testing Using SeleniumTechWell
 
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest
 
Mobile test automation perfecto star east
Mobile test automation perfecto star eastMobile test automation perfecto star east
Mobile test automation perfecto star eastPerfecto Mobile
 
Bugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perfBugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perfNitisak Mooltreesri
 
Launch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with AppurifyLaunch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with AppurifyManish Lachwani
 
How to make your app successful with mobile app testing?
How to make your app successful with mobile app testing?How to make your app successful with mobile app testing?
How to make your app successful with mobile app testing?MobilePundits
 

Similar to Top Best Practices for Successful Mobile Test Automation (20)

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
 
Use Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test AutomationUse Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test Automation
 
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test AutomationSTARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
 
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
AppSphere 15 - How The Container Store Uses AppDynamics in their Development ...
 
Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014
 
Best Practices in Mobile CI (webinar)
Best Practices in Mobile CI (webinar)Best Practices in Mobile CI (webinar)
Best Practices in Mobile CI (webinar)
 
SHESHANK_DASARI
SHESHANK_DASARISHESHANK_DASARI
SHESHANK_DASARI
 
Zen Test Labs Mobile Application Testing
Zen Test Labs Mobile Application TestingZen Test Labs Mobile Application Testing
Zen Test Labs Mobile Application Testing
 
Agile Mobile Testing Workshop
Agile Mobile Testing WorkshopAgile Mobile Testing Workshop
Agile Mobile Testing Workshop
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing
 
Mobile apps that win
Mobile apps that winMobile apps that win
Mobile apps that win
 
Mobile testing practices
Mobile testing practicesMobile testing practices
Mobile testing practices
 
Automated Testing Using Selenium
Automated Testing Using SeleniumAutomated Testing Using Selenium
Automated Testing Using Selenium
 
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
 
Mobile test automation perfecto star east
Mobile test automation perfecto star eastMobile test automation perfecto star east
Mobile test automation perfecto star east
 
Bugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perfBugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perf
 
Launch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with AppurifyLaunch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with Appurify
 
Performance testing
Performance testingPerformance testing
Performance testing
 
How to make your app successful with mobile app testing?
How to make your app successful with mobile app testing?How to make your app successful with mobile app testing?
How to make your app successful with mobile app testing?
 

More from Fred Beringer

The PerfOps revolution - Shutterfly's journey to faster performance
The PerfOps revolution - Shutterfly's journey to faster performanceThe PerfOps revolution - Shutterfly's journey to faster performance
The PerfOps revolution - Shutterfly's journey to faster performanceFred Beringer
 
My Web Performance Dirty Secrets
My Web Performance Dirty SecretsMy Web Performance Dirty Secrets
My Web Performance Dirty SecretsFred Beringer
 
SOASTA CloudTest Lite
SOASTA CloudTest LiteSOASTA CloudTest Lite
SOASTA CloudTest LiteFred Beringer
 
Soasta on demand brochure Francaise
Soasta on demand brochure FrancaiseSoasta on demand brochure Francaise
Soasta on demand brochure FrancaiseFred Beringer
 
The Cloud: A game changer to test, at scale and in production, SOA based web...
The Cloud: A game changer to test, at scale and in production,  SOA based web...The Cloud: A game changer to test, at scale and in production,  SOA based web...
The Cloud: A game changer to test, at scale and in production, SOA based web...Fred Beringer
 
The Cloud: A Game-Changer for Web Performance Testing
The Cloud: A Game-Changer for Web Performance TestingThe Cloud: A Game-Changer for Web Performance Testing
The Cloud: A Game-Changer for Web Performance TestingFred Beringer
 

More from Fred Beringer (7)

The PerfOps revolution - Shutterfly's journey to faster performance
The PerfOps revolution - Shutterfly's journey to faster performanceThe PerfOps revolution - Shutterfly's journey to faster performance
The PerfOps revolution - Shutterfly's journey to faster performance
 
My Web Performance Dirty Secrets
My Web Performance Dirty SecretsMy Web Performance Dirty Secrets
My Web Performance Dirty Secrets
 
SOASTA CloudTest Lite
SOASTA CloudTest LiteSOASTA CloudTest Lite
SOASTA CloudTest Lite
 
Soasta on demand brochure Francaise
Soasta on demand brochure FrancaiseSoasta on demand brochure Francaise
Soasta on demand brochure Francaise
 
Soasta on demand
Soasta on demandSoasta on demand
Soasta on demand
 
The Cloud: A game changer to test, at scale and in production, SOA based web...
The Cloud: A game changer to test, at scale and in production,  SOA based web...The Cloud: A game changer to test, at scale and in production,  SOA based web...
The Cloud: A game changer to test, at scale and in production, SOA based web...
 
The Cloud: A Game-Changer for Web Performance Testing
The Cloud: A Game-Changer for Web Performance TestingThe Cloud: A Game-Changer for Web Performance Testing
The Cloud: A Game-Changer for Web Performance Testing
 

Recently uploaded

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 

Top Best Practices for Successful Mobile Test Automation

  • 1. TOP BEST PRACTICES FOR SUCCESSFUL MOBILE TEST AUTOMATION @fredberinger
  • 2. SOMETHING FOR YOU TO TAKE BACK HOME
  • 3.
  • 5. EXPECTATION •  •  •  •  It is as difficult as developing a good mobile app It is a software project by itself It is not optional in mobile You will probably fail before you succeed
  • 6. #1 - SET THE RIGHT GOALS
  • 7. AUTOMATION OBJECTIVES •  •  •  •  •  Continuous feedback to fix bugs faster Enable new activities Increase test coverage Raise confidence Better customer support
  • 8. #2 – TRACK YOUR OBJECTIVES IF IT IS NOT MEASURED, IT DOESN’T EXIST
  • 9. SET YOUR OWN METRICS •  •  •  •  Turnaround time for fixes Customer satisfaction on app store Lower number of bugs on production EMET (Equivalent Manual Execution Test)
  • 10. ACTIONABLE TEST INTELLIGENCE •  •  •  •  •  •  Part of the automation framework Available and highly visible to everyone Establish a baseline and track ROI Take costs into account (Value=Benefit-cost) Too many metrics can hurt Rinse and repeat until you get it right
  • 11. #4 BUT NOT ALL THE TESTS!
  • 12. MISTER JENKINS IN YOUR FRIEND •  •  •  •  •  •  •  •  Automate your build Automate your app deployment Automate your environment deployment Automate your tear down Automate your test execution Automate your reporting Automate your metrics tracking Automate your communication
  • 13. #5 – AUTOMATE ASAP BUT BUILD THE FOUNDATION FIRST
  • 14. Careful planning •  Plan your Automation infrastructure •  Cloud, on-premise, devices connectivity, app deployment, data aggregation, reporting, etc. •  Pick your automation tool wisely •  Start small and grow •  Don’t hesitate to pause tests building activity
  • 15. #6 – PICK THE RIGHT TESTS TO AUTOMATE AND I CLEARLY DON’T HAVE A GOOD PICTURE FOR THIS SLIDE
  • 16. ANALYZE THE RISK OF FAILURE R(c)=P(c) * I(c) Probability •  Code Complexity •  Changed Areas •  Affected Interfaces •  New Technology •  Component Maturity Impact •  Financial •  Reputation •  Legal •  Security •  Loss of Customers
  • 17. #7 – WHERE TO RUN TESTS HINT: 0% USERS RUN YOUR APP ON A SIMULATOR
  • 18. SIMULATOR VS REAL DEVICES •  Pros •  Cheap •  Integrated with IDE •  Cons •  Not testing on actual platform. What if the test pass? What’s next? •  Network is different •  OS is different (stock) •  Can’t simulate real hardware (CPU, Memory, etc.) Not fit for mobile performance •  Pros •  Reproduce real gestures •  Real results, no false negative •  Can test under OEM customization •  Fit for mobile performance •  Cons •  Need to be managed (device Cloud helps!)
  • 21. #8 – BUILD EFFICIENT TESTS SIZE MATTERS!!
  • 22. S.F.I.R.S.T.R •  •  •  •  •  •  •  Small – Easier to understand & Fix Fast – Parallel execution for faster feedback Independent – Can run any subsets in any order Repeatable – Tests get the same result every time Self-Checking – No human checking Timely – Should be written in parallel with dev Reusable – To avoid maintenance nightmares
  • 23. #8 – BUILD TESTABILITY ASK KINDLY …
  • 24. WHICH IS BETTER? //TiUIScrollView[@touchTestId='mfaSiteKeysignOn_securityPhraseWindow_ScrollView']/ TiUIScrollViewImpl/UIView/TiUIView[.//UILabel[@text='If you don't recognize your personalized security image, don't enter your password.']]/TiUITextField/TiTextField XPATH text=blah TEXT classname=TiTextField[1] INDEXED OBJECT id=mfaSiteKey-siteKey_Password_Input UNIQUE ID •  •  •  •  Build more reliable tests with unique IDs Lower maintenance cost Test early A non-optional investment
  • 25. # 9 - DATA IS YOUR FRIEND
  • 26. BE DATA-DRIVEN •  •  •  •  Increase test coverage FAST Easy to add, remove and configure tests Reduce the number of tests to maintain Separation of Tests and Datas
  • 27. #10 – USE RELIABLE WAITS FORGET ABOUT TIME DELAYS!
  • 28. USE RELIABLE AND INTELLIGENT WAITS •  Use object visibility to manage the flow of the test •  Never use time delays to manage back-end variability •  Never use time delays to account for device performance •  Spend time finding the right locator to wait on •  Run your test 100 times before claiming success
  • 29. #11 – LEVERAGE FUNCTIONAL TESTS FOR PERFORMANCE YOU GET THE PICTURE
  • 30. COVER ALL YOUR BASES No backend connection Native Apps CPU Battery Memory Transaction timing Web browser users CPU Stress tests Endurance tests Load test Battery Memory Transaction timing Mobile browser users Native app users Response time Mobile Web Apps Load Balancer Data traffic HTTP(S) UDP WebSocket Cache Web Server Web Server Shared web & mobile infrastructure App Server App Server Database
  • 31. #12 – BUILD THE RIGHT TEAM
  • 32. LEAN AND EFFICIENT •  Quality Software Engineers •  Automation Framework ie. CI, Cloud, Pyton, Perl, Web, everything •  Automation Architect •  What tests to automate? Identify reusable components, Metrics, ROI, everything •  Automation Engineer •  Build automated tests, everything •  Expert in automation and knowledge of mobile apps dev •  Test Engineer •  Build tests, everything
  • 33. o  First End-to-End Mobile App Test Platform •  First Cloud-Based Load Testing Solution •  First Global Test Cloud (17 Countries, 100 Cities) •  First Mobile Test Automation “Platform” •  First real time RUM for web and mobile o  Over 350 Global Corporate Customers •  10,000 Mobile Developers and Testers use TouchTest •  Over 1,000 Mobile and Web Apps are Tested with TouchTest o  Award Winning & Patented Technology •  Named by Wall Street Journal Top 50 Hottest Companies three years running •  Gartner Visionary Leader © 2012 SOASTA. All rights reserved. May 22, 2012 33
  • 34. ü  ü  ü  ü  ü  Precision record and Playback iOS, Android, Native/Hybrid/Mobile Web 100+ Built-in components Jenkins integration Free forever for 1 device TouchTest Lite Download it FREE today! http://www.soasta.com/free
  • 35. TOP BEST PRACTICES FOR SUCCESSFUL MOBILE TEST AUTOMATION QUESTIONS? twitter.com/fredberinger fberinger@soasta.com http://www.fredberinger.com