SlideShare uma empresa Scribd logo
1 de 33
Baixar para ler offline
Kwo Ding
Test Automation Consultant
SauceCon
7 June 2017
Mobile Test PyramidUI integration testing for mobile
Kwo Ding
Freelance Test Automation
Consultant
About Kwo
Over 10 years experience in software testing
Currently active in the financial industry
Specialized in implementation of test (automation) strategies
Experienced and certified Scrum Master, Product Owner and Lean Green Belt
Specialized in automation of web, mobile and API testing
Based in the Netherlands
Who Am I?
kwo@dingit.net
https://www.linkedin.com/in/kwoding
https://www.facebook.com/kwoding
@dingkwo
Mobile Testing Challenges
Browsers Simulators/Emulators Real devices
What are their strengths and how to apply?
Test Pyramid
Unit
Service
UI
Mike Cohn, Succeeding with Agile (2009)
Test Guidelines
Test as isolated as possible
Automate as much as possible
Zero tolerance on flakiness
Fast feedback (test as early as possible)
Regression = broken build
No risk = no test
NFRs are just as important as funcAonals
Mobile Test PyramidTest Guidelines
Test as isolated as possible
Automate as much as possible
Zero tolerance on flakiness
Fast feedback (test as early as possible)
Regression = broken build
No risk = no test
NFRs are just as important as funcAonals
Real devices
Simulators/Emulators
Browsers
Browsers
Mobile testing on desktop browsers
Pros and ConsUsage of desktop browser testing for mobile
Matter of milliseconds to launch a browser, also
headless possible
Fast execution
Easily set up 10+ browser instances per machine
Scalable
Ability to use browsers on different operating
systems
Cross platform
Mobile simulation in desktop browsers is still using
the desktop browser
Mobile simulation uses desktop browser version
No native keyboards, incoming calls etc.
No native integration
Incredibly fast, but it’s just not a device
Just not a device…
Focus AreasDesktop Browser Testing
Isolated browser tests performing full
functional validations
Resizing browsers and toggling user agents
Functional system testing
Responsive design
Use equivalent desktop browsers
No extensive visual checks because the
rendering is different than actual devices
Cross-browser
Overall visual layout
Demo Browser Testing
So mobile testing on desktop browsers is great, right?
Mobile Simulation in Browser vs Device
Mobile Simulation in Browser vs Device
Mobile Simulation in Browser vs Device
Mobile Simulation in Browser vs Device
Simulators/Emulators
Closer to the actual mobile experience
Pros and ConsUsage of mobile simulators/emulators
Simulators/emulators are easy to set up, just
download, install and run
Easy to set up and free
Virtualization means scalable and also running in
parallel on one machine
Scalable
Ability to test native APIs such as incoming calls and
GPS injection
Native API integration
Simulators are fast, because they only have to
simulate the software part. Emulators based on the
Intel architecture are fast.
Simulators or Intel-based emulators are fast
Manufacturer’s skins are available, but the device
behavior is still based on stock
Vanilla versions only
CPU/memory usage of machine in case of simulators.
Emulators try to simulate the hardware
No real resource usage
Connectivity with NFC, Bluetooth, network
connections
No real interoperability
Emulators based on the ARM architecture are slow,
which is actually the main architecture for Android
devices
Slow ARM-based emulators
Contrast/brightness inaccurate in light/dark
environment
Inaccurate color display in light/dark
Easy to debug simulator/emulators, already hooked
up to the machine to access logs
Debugging possibilities
Focus AreasSimulator/Emulator Testing
Click paths throughout the application
GPS injection, file attachments, incoming
calls etc.
Functional end-user flows
Native API integration
Emulators are limited to vanilla versions
Visuals (vanilla only)
Touch interactions such as swipe and tap
comes closer to the user experience of a
device than browser emulation
Touch interactions
Demo Simulator/Emulator Testing
Real Devices
The real thing…
Pros and ConsUsage of real devices
Ability to test native APIs not only with injections for
automation, but also actual NFC touch for example
Native APIs in real conditions
Some real devices are just faster than emulators due
to the simulation of hardware, especially compared to
the ARM-based emulators
Can be faster than emulators
Real devices come with a price, usually you pay per
device/cradle
Costs
A new device is usually not available on-the-fly, even
with cloud solutions
New device means procurement
Actual network conditions, battery/CPU/memory
usage, actual manufacturer’s sauce on top of the OS
Just the real thing…
iOS apps need to be signed with Development
Distribution Certificate and Provisioning Profile for
automation
Development iOS build required for automation
Focus AreasReal Device Testing
Validating usability such as actual click
areas, touch actions and voice over
CPU/memory usage, battery, network
strengths
Interruption (incoming calls, push
notifications), resource fighting (camera,
GPS), NFC, Bluetooth
Usability
Performance
Native API integration
Focus on devices which are not available as
simulators/emulators
Real OS from manufacturers
With specific manufacturer’s OS it comes
with built-in browsers which are different
than the standard and well-known
browsers such as Chrome
Visuals
Manufacturer’s sauce
Specific built-in browsers
Demo Real Device Testing
Best practicesMobile Testing
Use native gestures for usability
testing such as touch and tap
Scroll elements into view
before clicking
Use native keyboards instead of
injecting text or “sendKeys”
Webview ≠ mobile
browser rendering
Take technical click areas into
account (“fat finger click”)
Launch a “clean”
device before test
Generic Automation
Real devices: real-life conditions
Performance testing, native API integration such as
incoming calls, GPS, background apps, NFC etc.
Real devices: visual and usability testing
Visual validations and usability flows
Simulators/Emulators: functional end-user flows and visuals
Fast feedback on end-user flows with touch
interactions and visuals
Browsers: system testing and responsive design
In case of hybrid and web apps: Responsive design
and system testing
Mobile Test Pyramid
Real devices
Simulators/Emulators
Browsers
Contact
Kwo Ding
Freelance Test Automation
Consultant
kwo@dingit.net
https://www.linkedin.com/in/kwoding
https://www.facebook.com/kwoding
@dingkwo

Mais conteúdo relacionado

Mais procurados

Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing Shivaraj R
 
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
 
Do You Enjoy Espresso in Android App Testing?
Do You Enjoy Espresso in Android App Testing?Do You Enjoy Espresso in Android App Testing?
Do You Enjoy Espresso in Android App Testing?Bitbar
 
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App Testing
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App TestingContinuous Testing Odyssey: Learn Best Practices for End-to-End Web App Testing
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App TestingSauce Labs
 
Appium tutorial| Appium Training
Appium tutorial| Appium Training Appium tutorial| Appium Training
Appium tutorial| Appium Training QA Masters
 
Continuous testing on emulators using the espresso test automation framework
Continuous testing on emulators using the espresso test automation frameworkContinuous testing on emulators using the espresso test automation framework
Continuous testing on emulators using the espresso test automation frameworkSauce Labs
 
Mobile applications and automation testing
Mobile applications and automation testingMobile applications and automation testing
Mobile applications and automation testingIndicThreads
 
Selenium training
Selenium trainingSelenium training
Selenium trainingShivaraj R
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-AutomationMindfire Solutions
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testingshanu_123
 
Mobile performance metrics and performance monitoring meetup 2017 05 10
Mobile performance metrics and performance monitoring meetup 2017 05 10Mobile performance metrics and performance monitoring meetup 2017 05 10
Mobile performance metrics and performance monitoring meetup 2017 05 10Bitbar
 
Testing on Real Devices vs. Emulators
Testing on Real Devices vs. EmulatorsTesting on Real Devices vs. Emulators
Testing on Real Devices vs. EmulatorsKualitatem
 
10 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.510 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.5Sauce Labs
 
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
 
SauceCon 2017: Testing @ the Speed of Concurrency
SauceCon 2017: Testing @ the Speed of ConcurrencySauceCon 2017: Testing @ the Speed of Concurrency
SauceCon 2017: Testing @ the Speed of ConcurrencySauce Labs
 
Mobile First: How To Approach Mobile Testing!
Mobile First: How To Approach Mobile Testing!Mobile First: How To Approach Mobile Testing!
Mobile First: How To Approach Mobile Testing!Usersnap
 
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)
 
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with AppiumSrijan Technologies
 
Parallel testing with appium
Parallel testing with appiumParallel testing with appium
Parallel testing with appiummoizjv
 

Mais procurados (20)

Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing
 
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
 
Do You Enjoy Espresso in Android App Testing?
Do You Enjoy Espresso in Android App Testing?Do You Enjoy Espresso in Android App Testing?
Do You Enjoy Espresso in Android App Testing?
 
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App Testing
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App TestingContinuous Testing Odyssey: Learn Best Practices for End-to-End Web App Testing
Continuous Testing Odyssey: Learn Best Practices for End-to-End Web App Testing
 
Appium tutorial| Appium Training
Appium tutorial| Appium Training Appium tutorial| Appium Training
Appium tutorial| Appium Training
 
Continuous testing on emulators using the espresso test automation framework
Continuous testing on emulators using the espresso test automation frameworkContinuous testing on emulators using the espresso test automation framework
Continuous testing on emulators using the espresso test automation framework
 
Mobile applications and automation testing
Mobile applications and automation testingMobile applications and automation testing
Mobile applications and automation testing
 
Selenium training
Selenium trainingSelenium training
Selenium training
 
Mobile Testing
Mobile TestingMobile Testing
Mobile Testing
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-Automation
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Mobile performance metrics and performance monitoring meetup 2017 05 10
Mobile performance metrics and performance monitoring meetup 2017 05 10Mobile performance metrics and performance monitoring meetup 2017 05 10
Mobile performance metrics and performance monitoring meetup 2017 05 10
 
Testing on Real Devices vs. Emulators
Testing on Real Devices vs. EmulatorsTesting on Real Devices vs. Emulators
Testing on Real Devices vs. Emulators
 
10 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.510 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.5
 
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
 
SauceCon 2017: Testing @ the Speed of Concurrency
SauceCon 2017: Testing @ the Speed of ConcurrencySauceCon 2017: Testing @ the Speed of Concurrency
SauceCon 2017: Testing @ the Speed of Concurrency
 
Mobile First: How To Approach Mobile Testing!
Mobile First: How To Approach Mobile Testing!Mobile First: How To Approach Mobile Testing!
Mobile First: How To Approach Mobile Testing!
 
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
 
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
 
Parallel testing with appium
Parallel testing with appiumParallel testing with appium
Parallel testing with appium
 

Semelhante a SauceCon 2017: Mobile Test Pyramid

Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaEdureka!
 
Velocity Conference: Increasing Speed To Market In Mobile Development Through...
Velocity Conference: Increasing Speed To Market In Mobile Development Through...Velocity Conference: Increasing Speed To Market In Mobile Development Through...
Velocity Conference: Increasing Speed To Market In Mobile Development Through...Intuit Inc.
 
Handalian shelkey mobile-presentation_upa_2010
Handalian shelkey mobile-presentation_upa_2010Handalian shelkey mobile-presentation_upa_2010
Handalian shelkey mobile-presentation_upa_2010Lisa Renery Handalian
 
Velocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuitVelocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuitTina Su
 
Speed to Market in Mobile Development
Speed to Market in Mobile DevelopmentSpeed to Market in Mobile Development
Speed to Market in Mobile DevelopmentTina Su
 
Velocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuitVelocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuitTina Su
 
What Are Virtual Devices And How To Use Them For Testing.pdf
What Are Virtual Devices And How To Use Them For Testing.pdfWhat Are Virtual Devices And How To Use Them For Testing.pdf
What Are Virtual Devices And How To Use Them For Testing.pdfpCloudy
 
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
 
Droid con slides 2013 mobileci-v1.0
Droid con slides 2013  mobileci-v1.0Droid con slides 2013  mobileci-v1.0
Droid con slides 2013 mobileci-v1.0Anjan Dash
 
Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentNeeraj Kumar Singh
 
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
 
The Best Automated Testing Tools in 2020
The Best Automated Testing Tools in 2020The Best Automated Testing Tools in 2020
The Best Automated Testing Tools in 2020Liviu Lupei
 
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
 
How do I test these new mobile applications, and how does CA Application Test...
How do I test these new mobile applications, and how does CA Application Test...How do I test these new mobile applications, and how does CA Application Test...
How do I test these new mobile applications, and how does CA Application Test...Ian Kelly
 
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
 

Semelhante a SauceCon 2017: Mobile Test Pyramid (20)

Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | Edureka
 
Mobitop
MobitopMobitop
Mobitop
 
Mobitop
MobitopMobitop
Mobitop
 
Mobitop
MobitopMobitop
Mobitop
 
Mobitop
MobitopMobitop
Mobitop
 
Velocity Conference: Increasing Speed To Market In Mobile Development Through...
Velocity Conference: Increasing Speed To Market In Mobile Development Through...Velocity Conference: Increasing Speed To Market In Mobile Development Through...
Velocity Conference: Increasing Speed To Market In Mobile Development Through...
 
Handalian shelkey mobile-presentation_upa_2010
Handalian shelkey mobile-presentation_upa_2010Handalian shelkey mobile-presentation_upa_2010
Handalian shelkey mobile-presentation_upa_2010
 
Velocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuitVelocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuit
 
Speed to Market in Mobile Development
Speed to Market in Mobile DevelopmentSpeed to Market in Mobile Development
Speed to Market in Mobile Development
 
Velocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuitVelocity2013 mobile ci_intuit
Velocity2013 mobile ci_intuit
 
What Are Virtual Devices And How To Use Them For Testing.pdf
What Are Virtual Devices And How To Use Them For Testing.pdfWhat Are Virtual Devices And How To Use Them For Testing.pdf
What Are Virtual Devices And How To Use Them For Testing.pdf
 
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
 
SynapseIndia mobile apps
SynapseIndia mobile appsSynapseIndia mobile apps
SynapseIndia mobile apps
 
Droid con slides 2013 mobileci-v1.0
Droid con slides 2013  mobileci-v1.0Droid con slides 2013  mobileci-v1.0
Droid con slides 2013 mobileci-v1.0
 
Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and Environment
 
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?)
 
The Best Automated Testing Tools in 2020
The Best Automated Testing Tools in 2020The Best Automated Testing Tools in 2020
The Best Automated Testing Tools in 2020
 
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
 
How do I test these new mobile applications, and how does CA Application Test...
How do I test these new mobile applications, and how does CA Application Test...How do I test these new mobile applications, and how does CA Application Test...
How do I test these new mobile applications, and how does CA Application Test...
 
Best Practices in Mobile CI (webinar)
Best Practices in Mobile CI (webinar)Best Practices in Mobile CI (webinar)
Best Practices in Mobile CI (webinar)
 

Mais de Sauce Labs

Simplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless ToolsSimplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless ToolsSauce Labs
 
Testing on Mobile Devices with Location Services
Testing on Mobile Devices with Location ServicesTesting on Mobile Devices with Location Services
Testing on Mobile Devices with Location ServicesSauce Labs
 
Your Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at ScaleYour Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at ScaleSauce Labs
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with AppiumAutomating Hybrid Applications with Appium
Automating Hybrid Applications with AppiumSauce Labs
 
Quality at Speed: More API Testing, Less UI Testing
Quality at Speed: More API Testing, Less UI TestingQuality at Speed: More API Testing, Less UI Testing
Quality at Speed: More API Testing, Less UI TestingSauce Labs
 
Creating Digital Confidence with Test Automation
Creating Digital Confidence with Test AutomationCreating Digital Confidence with Test Automation
Creating Digital Confidence with Test AutomationSauce Labs
 
Just Enough (Automated) Testing
Just Enough (Automated) TestingJust Enough (Automated) Testing
Just Enough (Automated) TestingSauce Labs
 
Using Axe to Add Accessibility Checks to Your Existing Selenium Tests
Using Axe to Add Accessibility Checks to Your Existing Selenium TestsUsing Axe to Add Accessibility Checks to Your Existing Selenium Tests
Using Axe to Add Accessibility Checks to Your Existing Selenium TestsSauce Labs
 
How Open Source Helps to Bring Back Product Obsession
How Open Source Helps to Bring Back Product ObsessionHow Open Source Helps to Bring Back Product Obsession
How Open Source Helps to Bring Back Product ObsessionSauce Labs
 
Webinar: A Sneak Peek at Selenium 4 with Simon Stewart
Webinar: A Sneak Peek at Selenium 4 with Simon StewartWebinar: A Sneak Peek at Selenium 4 with Simon Stewart
Webinar: A Sneak Peek at Selenium 4 with Simon StewartSauce Labs
 
[Deu] Test Automatisierung Mit Web Driver.io
[Deu] Test Automatisierung Mit Web Driver.io[Deu] Test Automatisierung Mit Web Driver.io
[Deu] Test Automatisierung Mit Web Driver.ioSauce Labs
 
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...Sauce Labs
 
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. ForresterAccelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. ForresterSauce Labs
 
How to Measure Success in Continuous Testing
How to Measure Success in Continuous TestingHow to Measure Success in Continuous Testing
How to Measure Success in Continuous TestingSauce Labs
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...Sauce Labs
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test AutomationSauce Labs
 
Sauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs Webinar: Rising Importance of Software TestingSauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs Webinar: Rising Importance of Software TestingSauce Labs
 
BDD With Selenide by Hima Bindu Peteti
BDD With Selenide by Hima Bindu PetetiBDD With Selenide by Hima Bindu Peteti
BDD With Selenide by Hima Bindu PetetiSauce Labs
 
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...Sauce Labs
 
Continuous Delivery for "Mature" Codebases by Melisa Benua
Continuous Delivery for "Mature" Codebases by Melisa BenuaContinuous Delivery for "Mature" Codebases by Melisa Benua
Continuous Delivery for "Mature" Codebases by Melisa BenuaSauce Labs
 

Mais de Sauce Labs (20)

Simplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless ToolsSimplify Salesforce Testing with AI-Driven Codeless Tools
Simplify Salesforce Testing with AI-Driven Codeless Tools
 
Testing on Mobile Devices with Location Services
Testing on Mobile Devices with Location ServicesTesting on Mobile Devices with Location Services
Testing on Mobile Devices with Location Services
 
Your Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at ScaleYour Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at Scale
 
Automating Hybrid Applications with Appium
Automating Hybrid Applications with AppiumAutomating Hybrid Applications with Appium
Automating Hybrid Applications with Appium
 
Quality at Speed: More API Testing, Less UI Testing
Quality at Speed: More API Testing, Less UI TestingQuality at Speed: More API Testing, Less UI Testing
Quality at Speed: More API Testing, Less UI Testing
 
Creating Digital Confidence with Test Automation
Creating Digital Confidence with Test AutomationCreating Digital Confidence with Test Automation
Creating Digital Confidence with Test Automation
 
Just Enough (Automated) Testing
Just Enough (Automated) TestingJust Enough (Automated) Testing
Just Enough (Automated) Testing
 
Using Axe to Add Accessibility Checks to Your Existing Selenium Tests
Using Axe to Add Accessibility Checks to Your Existing Selenium TestsUsing Axe to Add Accessibility Checks to Your Existing Selenium Tests
Using Axe to Add Accessibility Checks to Your Existing Selenium Tests
 
How Open Source Helps to Bring Back Product Obsession
How Open Source Helps to Bring Back Product ObsessionHow Open Source Helps to Bring Back Product Obsession
How Open Source Helps to Bring Back Product Obsession
 
Webinar: A Sneak Peek at Selenium 4 with Simon Stewart
Webinar: A Sneak Peek at Selenium 4 with Simon StewartWebinar: A Sneak Peek at Selenium 4 with Simon Stewart
Webinar: A Sneak Peek at Selenium 4 with Simon Stewart
 
[Deu] Test Automatisierung Mit Web Driver.io
[Deu] Test Automatisierung Mit Web Driver.io[Deu] Test Automatisierung Mit Web Driver.io
[Deu] Test Automatisierung Mit Web Driver.io
 
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
Accelerating Innovation: Leveraging Open Source to Optimize Your Shift-Left I...
 
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. ForresterAccelerating Your Digital Agenda with Continuous Testing ft. Forrester
Accelerating Your Digital Agenda with Continuous Testing ft. Forrester
 
How to Measure Success in Continuous Testing
How to Measure Success in Continuous TestingHow to Measure Success in Continuous Testing
How to Measure Success in Continuous Testing
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
 
Sauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs Webinar: Rising Importance of Software TestingSauce Labs Webinar: Rising Importance of Software Testing
Sauce Labs Webinar: Rising Importance of Software Testing
 
BDD With Selenide by Hima Bindu Peteti
BDD With Selenide by Hima Bindu PetetiBDD With Selenide by Hima Bindu Peteti
BDD With Selenide by Hima Bindu Peteti
 
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...
 
Continuous Delivery for "Mature" Codebases by Melisa Benua
Continuous Delivery for "Mature" Codebases by Melisa BenuaContinuous Delivery for "Mature" Codebases by Melisa Benua
Continuous Delivery for "Mature" Codebases by Melisa Benua
 

Último

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 

Último (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

SauceCon 2017: Mobile Test Pyramid

  • 1. Kwo Ding Test Automation Consultant SauceCon 7 June 2017 Mobile Test PyramidUI integration testing for mobile
  • 2. Kwo Ding Freelance Test Automation Consultant About Kwo Over 10 years experience in software testing Currently active in the financial industry Specialized in implementation of test (automation) strategies Experienced and certified Scrum Master, Product Owner and Lean Green Belt Specialized in automation of web, mobile and API testing Based in the Netherlands Who Am I? kwo@dingit.net https://www.linkedin.com/in/kwoding https://www.facebook.com/kwoding @dingkwo
  • 4. Browsers Simulators/Emulators Real devices What are their strengths and how to apply?
  • 5. Test Pyramid Unit Service UI Mike Cohn, Succeeding with Agile (2009)
  • 6. Test Guidelines Test as isolated as possible Automate as much as possible Zero tolerance on flakiness Fast feedback (test as early as possible) Regression = broken build No risk = no test NFRs are just as important as funcAonals
  • 7. Mobile Test PyramidTest Guidelines Test as isolated as possible Automate as much as possible Zero tolerance on flakiness Fast feedback (test as early as possible) Regression = broken build No risk = no test NFRs are just as important as funcAonals Real devices Simulators/Emulators Browsers
  • 8. Browsers Mobile testing on desktop browsers
  • 9. Pros and ConsUsage of desktop browser testing for mobile Matter of milliseconds to launch a browser, also headless possible Fast execution Easily set up 10+ browser instances per machine Scalable Ability to use browsers on different operating systems Cross platform Mobile simulation in desktop browsers is still using the desktop browser Mobile simulation uses desktop browser version No native keyboards, incoming calls etc. No native integration Incredibly fast, but it’s just not a device Just not a device…
  • 10. Focus AreasDesktop Browser Testing Isolated browser tests performing full functional validations Resizing browsers and toggling user agents Functional system testing Responsive design Use equivalent desktop browsers No extensive visual checks because the rendering is different than actual devices Cross-browser Overall visual layout
  • 12.
  • 13.
  • 14. So mobile testing on desktop browsers is great, right?
  • 15. Mobile Simulation in Browser vs Device
  • 16. Mobile Simulation in Browser vs Device
  • 17. Mobile Simulation in Browser vs Device
  • 18. Mobile Simulation in Browser vs Device
  • 19. Simulators/Emulators Closer to the actual mobile experience
  • 20. Pros and ConsUsage of mobile simulators/emulators Simulators/emulators are easy to set up, just download, install and run Easy to set up and free Virtualization means scalable and also running in parallel on one machine Scalable Ability to test native APIs such as incoming calls and GPS injection Native API integration Simulators are fast, because they only have to simulate the software part. Emulators based on the Intel architecture are fast. Simulators or Intel-based emulators are fast Manufacturer’s skins are available, but the device behavior is still based on stock Vanilla versions only CPU/memory usage of machine in case of simulators. Emulators try to simulate the hardware No real resource usage Connectivity with NFC, Bluetooth, network connections No real interoperability Emulators based on the ARM architecture are slow, which is actually the main architecture for Android devices Slow ARM-based emulators Contrast/brightness inaccurate in light/dark environment Inaccurate color display in light/dark Easy to debug simulator/emulators, already hooked up to the machine to access logs Debugging possibilities
  • 21. Focus AreasSimulator/Emulator Testing Click paths throughout the application GPS injection, file attachments, incoming calls etc. Functional end-user flows Native API integration Emulators are limited to vanilla versions Visuals (vanilla only) Touch interactions such as swipe and tap comes closer to the user experience of a device than browser emulation Touch interactions
  • 23.
  • 25. Pros and ConsUsage of real devices Ability to test native APIs not only with injections for automation, but also actual NFC touch for example Native APIs in real conditions Some real devices are just faster than emulators due to the simulation of hardware, especially compared to the ARM-based emulators Can be faster than emulators Real devices come with a price, usually you pay per device/cradle Costs A new device is usually not available on-the-fly, even with cloud solutions New device means procurement Actual network conditions, battery/CPU/memory usage, actual manufacturer’s sauce on top of the OS Just the real thing… iOS apps need to be signed with Development Distribution Certificate and Provisioning Profile for automation Development iOS build required for automation
  • 26. Focus AreasReal Device Testing Validating usability such as actual click areas, touch actions and voice over CPU/memory usage, battery, network strengths Interruption (incoming calls, push notifications), resource fighting (camera, GPS), NFC, Bluetooth Usability Performance Native API integration Focus on devices which are not available as simulators/emulators Real OS from manufacturers With specific manufacturer’s OS it comes with built-in browsers which are different than the standard and well-known browsers such as Chrome Visuals Manufacturer’s sauce Specific built-in browsers
  • 27. Demo Real Device Testing
  • 28.
  • 29.
  • 30.
  • 31. Best practicesMobile Testing Use native gestures for usability testing such as touch and tap Scroll elements into view before clicking Use native keyboards instead of injecting text or “sendKeys” Webview ≠ mobile browser rendering Take technical click areas into account (“fat finger click”) Launch a “clean” device before test Generic Automation
  • 32. Real devices: real-life conditions Performance testing, native API integration such as incoming calls, GPS, background apps, NFC etc. Real devices: visual and usability testing Visual validations and usability flows Simulators/Emulators: functional end-user flows and visuals Fast feedback on end-user flows with touch interactions and visuals Browsers: system testing and responsive design In case of hybrid and web apps: Responsive design and system testing Mobile Test Pyramid Real devices Simulators/Emulators Browsers
  • 33. Contact Kwo Ding Freelance Test Automation Consultant kwo@dingit.net https://www.linkedin.com/in/kwoding https://www.facebook.com/kwoding @dingkwo