SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Continuous Shift-Left Automated
Testing in
native Mobile apps
MTS 1, Software Engineer, Quality
About Suparna
■ XCTest, XCUITest, Selenium, Appium, Espresso, UIAutomator,
SeeTest, Postman, Jenkins, CircleCI, Junit, Nunit, TestNG, GIT
■ Written Tech solutions in BrowserStack, Lambdatest, Medium
■ 1st Winner of TechGig Testathon 2018 - "India's Best Tester"
■ Silver Winner of Applitools Automation Hackathon 2020 -
Top 70
suparna-khamaru
/in/suparnakhamaru/ super-tester.medium.com
Agenda
Why Shift Left in Mobile?
Mobile Test Automation Pyramid
How much Mobile Automation is enough?
Right way to Automate
Best Practices in Mobile Automation
How to Shift Left?
Do we test enough?
Do we automate enough?
Are we using the right resources which
is
 Time saving
 Fast &
 Adding Value?
Manual
Testing
Non
Functional
Testing
Functional
Testing
Integration Testing
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
Manual
Testing
Non
Functional
Testing
Functional
Testing
Integration Testing
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
Manual
Testing
Non
Functional
Testing
Functional Testing
Integration Testing
•Unit Tests
•Snapshot Tests
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
Manual
Testing
Non
Functional
Testing
Functional Testing
•API Integration Tests
•SDK Integration Tests
Integration Testing
•Unit Tests
•Snapshot Tests
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
Manual
Testing
Non
Functional
Testing
•End to End Tests
•UI Tests on Staging
•UI Tests with SDK integration
•UI Tests on Mock Server
Functional Testing
•Library / SDK / Framework /
API Integration Tests
Integration Testing
•Unit Tests
•Snapshot Tests
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
Automation Test Framework
Development
Build
Unit Test Suite UI Test Suite Integrated to CI
Locators
Network
Layer
Set Accessibility
Identifiers
Reusable
& Optimised page
objects
Tests
Test Plan
Report with logs
& screenshots
Test Data
UI tests with
test/prod
environment
UI Tests with SDK
integration
UI tests with API
integration
UI Tests with
Mock API
Code & Test Coverage
UI tests with Test/Prod environment
UI Tests with SDK integration
UI tests with API integration
UI Tests with Mock API
Network Layers in E2E Testing
App
Test
Environment
UI Test
Flaky
Tests
UI tests with Test/Prod environment
UI Tests with SDK integration
UI tests with API integration
UI Tests with Mock API
Network Layers in E2E Testing
App
Mocke
d API
UI Test
100%
Reliable
Tests
Swifter
Embassy
Nimble
Wiremock
OkHttp
UI tests with Test/Prod environment
UI Tests with SDK integration
UI tests with API integration
UI Tests with Mock API
Network Layers in E2E Testing
API
call
App UI Test
UI tests with Test/Prod environment
UI Tests with SDK integration
UI tests with API integration
UI Tests with Mock API
Network Layers in E2E Testing
App
SDK
Library
SDK Unit
Test
UI Test
UI Tests with SDK integration
Network Layers in E2E Testing
Manual
Testing
•Accessibility Tests
•Security Scans
•Performance Tests
•Localisation & Internationalization Tests
Non
Functional
Testing
•End to End Tests
•UI Tests on Staging
•UI Tests with SDK integration
•UI Tests on Mock Server
Functional Testing
•Library / SDK / Framework /
API Integration Tests
Integration Testing
•Unit Tests
•Snapshot Tests
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
Accessibility Testing
Localization Testing
■ Calendar / region / Time zone
■ Language support
■ Locale / location
NavigationBar, {{0.0, 20.0}, {375.0, 44.0}}, identifier: 'Rewards'
Button, {{8.0, 20.0}, {43.0, 44.0}}, label: 'Back'
StaticText, {{151.5, 30.0}, {72.0, 22.5}}, label: 'Rewards'
Table, {{0.0, 64.0}, {375.0, 603.0}}
Other, {{0.0, -1091.5}, {375.0, 115.0}}, identifier: ‘BottleTile'
Image, {{139.5, -1091.5}, {96.0, 96.0}}, identifier: 'AwardImage'
Cell, {{0.0, -976.5}, {375.0, 2359.0}}
Button, {{18.0, -966.5}, {169.0, 46.0}}, identifier: ‘Alexa', label: ‘Talk'
Button, {{187.5, -966.5}, {169.0, 46.0}}, identifier: ‘Google', label: ‘Write'
•Upgradation Tests
•Exploratory Tests
•Dog Food - Alpha & Beta Tests
Manual
Testing
•Accessibility Tests
•Security Scans
•Performance Tests
•Localisation & Internationalization Tests
Non
Functional
Testing
•End to End Tests
•UI Tests on Staging
•UI Tests with SDK integration
•UI Tests on Mock Server
Functional Testing
•Library / SDK / Framework /
API Integration Tests
Integration Testing
•Unit Tests
•Snapshot Tests
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
•Upgradation Tests
•Exploratory Tests
•Dog Food - Alpha & Beta Tests
Manual
Testing
•Accessibility Tests
•Security Scans
•Performance Tests
•Localisation/Internationalization
Non
Functional
Testing
•End to End Tests
•UI Tests on Staging
•UI Tests with SDK
•UI Tests on Mock Server
Functional
Testing
•Library / SDK /
Framework / API
Integration Tests
Integration Testing
•Unit Tests
•Snapshot Tests
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
•Upgradation Tests
•Exploratory Tests
•Dog Food - Alpha & Beta Tests
Manual
Testing
•Accessibility Tests
•Security Scans
•Performance Tests
•Localisation/Internationalization
Non
Functional
Testing
•End to End Tests
•UI Tests on Staging
•UI Tests with SDK
•UI Tests on Mock Server
Functional
Testing
•Library / SDK /
Framework / API
Integration Tests
Integration Testing
•Unit Tests
•Snapshot Tests
•Code & Test
Coverage
Unit Testing
(5%)
(95%)
60%
15%
10%
10%
 Nightly Run
 Nightly Run
 Nightly Run
 Every PR
 Every PR
 Every PR
Easiest CI integrations
■ Simulators / Emulators
■ Browserstack
■ LambdaTest
■ AWS Device farm
■ TestingBot
■ SauceLabs
■ Firebase Test Lab
xcodebuild test -workspace sampleApp.xcworkspace -scheme sampleAppUITests
-destination 'platform=iOS Simulator,name=iPhone 11' -resultBundlePath
ResultBundle.xcresult
./gradlew connectedAndroidTest
Upload
app
Upload
test suite
Build
Best Practices
■ Appoint Dedicated personnel for each Job
■ Continuous Testing
■ Our test should FAIL gracefully
■ Separate test plans
■ No flaky tests
■ Not replacing Exploratory / Manual
Testing
■ Write maintainable, reusable, optimized &
readable Test code
Summary
 Accessibility
 Common Repository
 Robust and Low
maintenance
 High Reusability of code
 Fastest Test Executions
 Fastest Bug Detections
 Fastest Scripting
 Parallel Automation
 Boosts confidence
 Fastest Time to Market
every time
 Reduced human errors in
testing
 Earliest Bug Fix
 More mature & Reliable
Inner Peace
In God I trust, rest must pass the automated test suites
THANK YOU 🙏
/in/suparnakhamaru
suparna-khamaru
super-tester.medium.com

Weitere ähnliche Inhalte

Was ist angesagt?

Writing Clean Code (Recommendations by Robert Martin)
Writing Clean Code (Recommendations by Robert Martin)Writing Clean Code (Recommendations by Robert Martin)
Writing Clean Code (Recommendations by Robert Martin)Shirish Bari
 
Building Reusable SwiftUI Components
Building Reusable SwiftUI ComponentsBuilding Reusable SwiftUI Components
Building Reusable SwiftUI ComponentsPeter Friese
 
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXLOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXEnkitec
 
Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?Sura Gonzalez
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQueryZeeshan Khan
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing FrameworksMoataz Nabil
 
Hunting for security bugs in AEM webapps
Hunting for security bugs in AEM webappsHunting for security bugs in AEM webapps
Hunting for security bugs in AEM webappsMikhail Egorov
 
Mobile application testing report
Mobile application testing reportMobile application testing report
Mobile application testing reportQA Madness
 
Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...
Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...
Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...SafeNet
 
Google flutter the easy and practical way
Google flutter the easy and practical wayGoogle flutter the easy and practical way
Google flutter the easy and practical wayAhmed Abu Eldahab
 
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...Domenic Denicola
 
Easy Java Integration Testing with Testcontainers​
Easy Java Integration Testing with Testcontainers​Easy Java Integration Testing with Testcontainers​
Easy Java Integration Testing with Testcontainers​Payara
 
Android Development: The Basics
Android Development: The BasicsAndroid Development: The Basics
Android Development: The BasicsMike Desjardins
 
Rest api standards and best practices
Rest api standards and best practicesRest api standards and best practices
Rest api standards and best practicesAnkita Mahajan
 
Restful api design
Restful api designRestful api design
Restful api designMizan Riqzia
 
ES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern JavascriptES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern JavascriptWojciech Dzikowski
 

Was ist angesagt? (20)

Writing Clean Code (Recommendations by Robert Martin)
Writing Clean Code (Recommendations by Robert Martin)Writing Clean Code (Recommendations by Robert Martin)
Writing Clean Code (Recommendations by Robert Martin)
 
Building Reusable SwiftUI Components
Building Reusable SwiftUI ComponentsBuilding Reusable SwiftUI Components
Building Reusable SwiftUI Components
 
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXLOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
 
Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
 
Hunting for security bugs in AEM webapps
Hunting for security bugs in AEM webappsHunting for security bugs in AEM webapps
Hunting for security bugs in AEM webapps
 
An introduction to Xamarin
An introduction to XamarinAn introduction to Xamarin
An introduction to Xamarin
 
Mobile application testing report
Mobile application testing reportMobile application testing report
Mobile application testing report
 
Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...
Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...
Introduction to PKI & SafeNet Luna Hardware Security Modules with Microsoft W...
 
Javascript essentials
Javascript essentialsJavascript essentials
Javascript essentials
 
Google flutter the easy and practical way
Google flutter the easy and practical wayGoogle flutter the easy and practical way
Google flutter the easy and practical way
 
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
 
Easy Java Integration Testing with Testcontainers​
Easy Java Integration Testing with Testcontainers​Easy Java Integration Testing with Testcontainers​
Easy Java Integration Testing with Testcontainers​
 
Android Development: The Basics
Android Development: The BasicsAndroid Development: The Basics
Android Development: The Basics
 
Rest api standards and best practices
Rest api standards and best practicesRest api standards and best practices
Rest api standards and best practices
 
Restful api design
Restful api designRestful api design
Restful api design
 
Clean code slide
Clean code slideClean code slide
Clean code slide
 
ES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern JavascriptES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern Javascript
 
An Introduction To REST API
An Introduction To REST APIAn Introduction To REST API
An Introduction To REST API
 

Ähnlich wie Continuous Shift-Left Automated Testing in native Mobile apps

Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013TEST Huddle
 
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013TEST Huddle
 
Test Analyst-Santosh Ukade
Test Analyst-Santosh UkadeTest Analyst-Santosh Ukade
Test Analyst-Santosh UkadeSantosh Ukade
 
Neev Independent Testing Services
Neev Independent Testing ServicesNeev Independent Testing Services
Neev Independent Testing ServicesNeev Technologies
 
Mobile test automation perfecto star east
Mobile test automation perfecto star eastMobile test automation perfecto star east
Mobile test automation perfecto star eastPerfecto Mobile
 
[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam Carmi
[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam Carmi[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam Carmi
[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam CarmiApplitools
 
Web Automation Testing for developers?
Web Automation Testing for developers?Web Automation Testing for developers?
Web Automation Testing for developers?Victor Kushchenko
 
Digital Assurance Center of Excellence
Digital Assurance Center of ExcellenceDigital Assurance Center of Excellence
Digital Assurance Center of ExcellenceIra Agarwal
 
Top 20 best automation testing tools
Top 20 best automation testing toolsTop 20 best automation testing tools
Top 20 best automation testing toolsQACraft
 
"Experiences Of Test Automation At Spotify" with Kristian Karl
"Experiences Of Test Automation At Spotify" with Kristian Karl"Experiences Of Test Automation At Spotify" with Kristian Karl
"Experiences Of Test Automation At Spotify" with Kristian KarlTEST Huddle
 
Meticulous Planning of Test Automation
Meticulous Planning of Test AutomationMeticulous Planning of Test Automation
Meticulous Planning of Test Automationssuser2e8d4b
 
Quality in dev ops east 2017
Quality in dev ops east 2017Quality in dev ops east 2017
Quality in dev ops east 2017Amir Rozenberg
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Riccardo Coppola
 
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...Profesia Srl, Lynx Group
 
End to End Testing with Quality Enthusiasts: SDET Technologies
End to End Testing with Quality Enthusiasts: SDET TechnologiesEnd to End Testing with Quality Enthusiasts: SDET Technologies
End to End Testing with Quality Enthusiasts: SDET Technologiessdettech
 
Large-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in PracticeLarge-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in PracticeTechWell
 
Diving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the TechnologiesDiving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the TechnologiesQASymphony
 

Ähnlich wie Continuous Shift-Left Automated Testing in native Mobile apps (20)

Suparna - XCUITest
Suparna - XCUITestSuparna - XCUITest
Suparna - XCUITest
 
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
 
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
Kristian Karl - Experiences of Test Automation at Spotify - EuroSTAR 2013
 
Test Analyst-Santosh Ukade
Test Analyst-Santosh UkadeTest Analyst-Santosh Ukade
Test Analyst-Santosh Ukade
 
Neev Independent Testing Services
Neev Independent Testing ServicesNeev Independent Testing Services
Neev Independent Testing Services
 
Mobile test automation perfecto star east
Mobile test automation perfecto star eastMobile test automation perfecto star east
Mobile test automation perfecto star east
 
[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam Carmi
[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam Carmi[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam Carmi
[webinar] Cutting-edge Functional UI Testing Techniques - w/ Adam Carmi
 
Web Automation Testing for developers?
Web Automation Testing for developers?Web Automation Testing for developers?
Web Automation Testing for developers?
 
Digital Assurance Center of Excellence
Digital Assurance Center of ExcellenceDigital Assurance Center of Excellence
Digital Assurance Center of Excellence
 
Top 20 best automation testing tools
Top 20 best automation testing toolsTop 20 best automation testing tools
Top 20 best automation testing tools
 
"Experiences Of Test Automation At Spotify" with Kristian Karl
"Experiences Of Test Automation At Spotify" with Kristian Karl"Experiences Of Test Automation At Spotify" with Kristian Karl
"Experiences Of Test Automation At Spotify" with Kristian Karl
 
Meticulous Planning of Test Automation
Meticulous Planning of Test AutomationMeticulous Planning of Test Automation
Meticulous Planning of Test Automation
 
Quality in dev ops east 2017
Quality in dev ops east 2017Quality in dev ops east 2017
Quality in dev ops east 2017
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
 
Neev QA Offering
Neev QA OfferingNeev QA Offering
Neev QA Offering
 
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
Wso2 italia Open Break session #7 - Test di API e microservizi nelle architet...
 
GUI, Performance, Load and API testing with Test Studio
GUI, Performance, Load and API testing with Test StudioGUI, Performance, Load and API testing with Test Studio
GUI, Performance, Load and API testing with Test Studio
 
End to End Testing with Quality Enthusiasts: SDET Technologies
End to End Testing with Quality Enthusiasts: SDET TechnologiesEnd to End Testing with Quality Enthusiasts: SDET Technologies
End to End Testing with Quality Enthusiasts: SDET Technologies
 
Large-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in PracticeLarge-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in Practice
 
Diving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the TechnologiesDiving into the World of Test Automation The Approach and the Technologies
Diving into the World of Test Automation The Approach and the Technologies
 

Kürzlich hochgeladen

9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7Pooja Nehwal
 
Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...
Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...
Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...Niamh verma
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRnishacall1
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Pooja Nehwal
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceanilsa9823
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceanilsa9823
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPsychicRuben LoveSpells
 
哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...
哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...
哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...wyqazy
 

Kürzlich hochgeladen (9)

9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7
 
Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...
Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...
Chandigarh Call Girls Service ❤️🍑 9115573837 👄🫦Independent Escort Service Cha...
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
 
哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...
哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...
哪里有卖的《俄亥俄大学学历证书+俄亥俄大学文凭证书+俄亥俄大学学位证书》Q微信741003700《俄亥俄大学学位证书复制》办理俄亥俄大学毕业证成绩单|购买...
 

Continuous Shift-Left Automated Testing in native Mobile apps

  • 1. Continuous Shift-Left Automated Testing in native Mobile apps MTS 1, Software Engineer, Quality
  • 2. About Suparna ■ XCTest, XCUITest, Selenium, Appium, Espresso, UIAutomator, SeeTest, Postman, Jenkins, CircleCI, Junit, Nunit, TestNG, GIT ■ Written Tech solutions in BrowserStack, Lambdatest, Medium ■ 1st Winner of TechGig Testathon 2018 - "India's Best Tester" ■ Silver Winner of Applitools Automation Hackathon 2020 - Top 70 suparna-khamaru /in/suparnakhamaru/ super-tester.medium.com
  • 3. Agenda Why Shift Left in Mobile? Mobile Test Automation Pyramid How much Mobile Automation is enough? Right way to Automate Best Practices in Mobile Automation
  • 4. How to Shift Left?
  • 5.
  • 6. Do we test enough? Do we automate enough? Are we using the right resources which is  Time saving  Fast &  Adding Value?
  • 7.
  • 10. Manual Testing Non Functional Testing Functional Testing Integration Testing •Unit Tests •Snapshot Tests Unit Testing (5%) (95%) 60% 15% 10% 10%
  • 11.
  • 12. Manual Testing Non Functional Testing Functional Testing •API Integration Tests •SDK Integration Tests Integration Testing •Unit Tests •Snapshot Tests Unit Testing (5%) (95%) 60% 15% 10% 10%
  • 13. Manual Testing Non Functional Testing •End to End Tests •UI Tests on Staging •UI Tests with SDK integration •UI Tests on Mock Server Functional Testing •Library / SDK / Framework / API Integration Tests Integration Testing •Unit Tests •Snapshot Tests Unit Testing (5%) (95%) 60% 15% 10% 10%
  • 14. Automation Test Framework Development Build Unit Test Suite UI Test Suite Integrated to CI Locators Network Layer Set Accessibility Identifiers Reusable & Optimised page objects Tests Test Plan Report with logs & screenshots Test Data UI tests with test/prod environment UI Tests with SDK integration UI tests with API integration UI Tests with Mock API Code & Test Coverage
  • 15. UI tests with Test/Prod environment UI Tests with SDK integration UI tests with API integration UI Tests with Mock API Network Layers in E2E Testing App Test Environment UI Test Flaky Tests
  • 16. UI tests with Test/Prod environment UI Tests with SDK integration UI tests with API integration UI Tests with Mock API Network Layers in E2E Testing App Mocke d API UI Test 100% Reliable Tests Swifter Embassy Nimble Wiremock OkHttp
  • 17. UI tests with Test/Prod environment UI Tests with SDK integration UI tests with API integration UI Tests with Mock API Network Layers in E2E Testing API call App UI Test
  • 18. UI tests with Test/Prod environment UI Tests with SDK integration UI tests with API integration UI Tests with Mock API Network Layers in E2E Testing App SDK Library SDK Unit Test UI Test
  • 19. UI Tests with SDK integration Network Layers in E2E Testing
  • 20. Manual Testing •Accessibility Tests •Security Scans •Performance Tests •Localisation & Internationalization Tests Non Functional Testing •End to End Tests •UI Tests on Staging •UI Tests with SDK integration •UI Tests on Mock Server Functional Testing •Library / SDK / Framework / API Integration Tests Integration Testing •Unit Tests •Snapshot Tests Unit Testing (5%) (95%) 60% 15% 10% 10%
  • 21.
  • 22. Accessibility Testing Localization Testing ■ Calendar / region / Time zone ■ Language support ■ Locale / location NavigationBar, {{0.0, 20.0}, {375.0, 44.0}}, identifier: 'Rewards' Button, {{8.0, 20.0}, {43.0, 44.0}}, label: 'Back' StaticText, {{151.5, 30.0}, {72.0, 22.5}}, label: 'Rewards' Table, {{0.0, 64.0}, {375.0, 603.0}} Other, {{0.0, -1091.5}, {375.0, 115.0}}, identifier: ‘BottleTile' Image, {{139.5, -1091.5}, {96.0, 96.0}}, identifier: 'AwardImage' Cell, {{0.0, -976.5}, {375.0, 2359.0}} Button, {{18.0, -966.5}, {169.0, 46.0}}, identifier: ‘Alexa', label: ‘Talk' Button, {{187.5, -966.5}, {169.0, 46.0}}, identifier: ‘Google', label: ‘Write'
  • 23. •Upgradation Tests •Exploratory Tests •Dog Food - Alpha & Beta Tests Manual Testing •Accessibility Tests •Security Scans •Performance Tests •Localisation & Internationalization Tests Non Functional Testing •End to End Tests •UI Tests on Staging •UI Tests with SDK integration •UI Tests on Mock Server Functional Testing •Library / SDK / Framework / API Integration Tests Integration Testing •Unit Tests •Snapshot Tests Unit Testing (5%) (95%) 60% 15% 10% 10%
  • 24. •Upgradation Tests •Exploratory Tests •Dog Food - Alpha & Beta Tests Manual Testing •Accessibility Tests •Security Scans •Performance Tests •Localisation/Internationalization Non Functional Testing •End to End Tests •UI Tests on Staging •UI Tests with SDK •UI Tests on Mock Server Functional Testing •Library / SDK / Framework / API Integration Tests Integration Testing •Unit Tests •Snapshot Tests Unit Testing (5%) (95%) 60% 15% 10% 10%
  • 25. •Upgradation Tests •Exploratory Tests •Dog Food - Alpha & Beta Tests Manual Testing •Accessibility Tests •Security Scans •Performance Tests •Localisation/Internationalization Non Functional Testing •End to End Tests •UI Tests on Staging •UI Tests with SDK •UI Tests on Mock Server Functional Testing •Library / SDK / Framework / API Integration Tests Integration Testing •Unit Tests •Snapshot Tests •Code & Test Coverage Unit Testing (5%) (95%) 60% 15% 10% 10%  Nightly Run  Nightly Run  Nightly Run  Every PR  Every PR  Every PR
  • 26. Easiest CI integrations ■ Simulators / Emulators ■ Browserstack ■ LambdaTest ■ AWS Device farm ■ TestingBot ■ SauceLabs ■ Firebase Test Lab xcodebuild test -workspace sampleApp.xcworkspace -scheme sampleAppUITests -destination 'platform=iOS Simulator,name=iPhone 11' -resultBundlePath ResultBundle.xcresult ./gradlew connectedAndroidTest Upload app Upload test suite Build
  • 27. Best Practices ■ Appoint Dedicated personnel for each Job ■ Continuous Testing ■ Our test should FAIL gracefully ■ Separate test plans ■ No flaky tests ■ Not replacing Exploratory / Manual Testing ■ Write maintainable, reusable, optimized & readable Test code
  • 28. Summary  Accessibility  Common Repository  Robust and Low maintenance  High Reusability of code  Fastest Test Executions  Fastest Bug Detections  Fastest Scripting  Parallel Automation  Boosts confidence  Fastest Time to Market every time  Reduced human errors in testing  Earliest Bug Fix  More mature & Reliable
  • 29. Inner Peace In God I trust, rest must pass the automated test suites

Hinweis der Redaktion

  1. Slower To write tests Slower to Execute the tests Slower to Fix Cost of Bug
  2. Unit tests is directly done by Dev team with XCTest and Junit frameworks on unit levels, sometimes using stubs. Snapshot tests are also known as Visual tests and screenshot tests, where you literally save lot of time. - https://medium.com/dev-jam/snapshot-testing-in-swift-9d52cbec075c - https://github.com/robertofrontado/snapshot-testing-sample Security Scans (Veracode, Ostorlab) Performance Tests (Newrelic, Firebase) End to End Tests (Distributed Parallel)
  3. Security Scans (Veracode, Ostorlab) Performance Tests (Newrelic, Firebase) End to End Tests (Distributed Parallel)
  4. E2E Test Suite End to End Tests (Distributed Parallel) Code & Test Coverage Measures
  5. E2E Test Suite End to End Tests (Distributed Parallel) Code & Test Coverage Measures
  6. E2E Test Suite End to End Tests (Distributed Parallel) Code & Test Coverage Measures
  7. Security Scans (Veracode, Ostorlab) Performance Tests (Newrelic, Firebase) End to End Tests (Distributed Parallel)
  8. Compare with third party automation tools Versus Google and apple test frameworks
  9. Specialities