SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
Choosing a CI friendly Mobile
Test Automation Framework
National Software Testing Conference 2019
The British Museum, London
Shashikant Jagtap [XCTEQ Limited ]
@Shashikant86
Agenda
• Mobile App Development Technologies
• Mobile Test Automation Frameworks
• Mobile Test Automation & CI/CD Pipelines
• How to make decision?
@Shashikant86
Mobile Platforms
• iOS ( Apple )
• Android ( Google )
• Windows ( Microsoft )
• Symbian and many more…
@Shashikant86
Popular Mobile Platforms
•
@Shashikant86
Mobile Development Technologies
• Native ( Swift & Kotlin )
• React Native ( JavaScript )
• Xamarin ( C# )
• Flutter ( Dart )
• Ionic, Cordova ……..
@Shashikant86
Native vs Cross-Platform
• Native tools and technologies are the best and preferred if budget and deadlines
are feasible
@Shashikant86
Native vs Cross-Platform
• Native tools are the best but ….
• Project Budget
• Project Deadlines
• Hiring Cost
• Separate Skills
• So companies make decision to use cross-platform tools
@Shashikant86
Native Mobile UI Test Automation
• XCUITest ( Apple )
• Expresso ( Google )
@Shashikant86
Benefits of Native UI Test tools
• Fast
• Test code goes into the apps code
• Dev/Test Collaboration
• Easy to plug into CI system
• Maintained by Google or Apple
@Shashikant86
Cross-Platform Mobile UI Test Tools
• Appium
• Detox
@Shashikant86
Framework Specific Mobile UI Test Tools
• Flutter ( Flutter Driver )
• Xamarin ( Xamarin.UITest )
• React Native ( No Official Support for UI Testing )
@Shashikant86
Commercial Mobile UI Test Tools
• Many more Commercial or Paid Mobile Test Automation tools.
@Shashikant86
How to choose Mobile Test Framework?
• OMG! There are so many options. How do I choose the test framework for my mobile
app?
@Shashikant86
Mobile UI Test Tools + CI
• Native Tools are easy and faster for CI Pipelines
• Third-party tools required additional setup and custom scripting
• Third-party tools required pre-built app for every CI build
• Real Device Testing Services adds additional complexity for CI
• Some CI Server/Services has out of the box Support for Mobile UI Testing
@Shashikant86
Tool Selection: Usual Process
• Pick the most commonly used framework and hope that I will work for your app
( e.g Appium )
@Shashikant86
Tool Selection: Usual Process
• Pick the most commonly used framework and hope that will work for your app ( e.g Appium )
• Your engineer/QA have used it before so it would be easy to setup and use
• That’s hot in the market, let’s pick that for our project
• That’s too new, let’s not try it before someone else share their experience.
• It’s open-source has too many or not too many contributors
• Its build by famous company so it would be good.
• Why use others? Let’s build our own.
@Shashikant86
Things to Consider
• Native App - Native Test Tools (XCUITest and Espresso), No brainer!
@Shashikant86
Things to Consider
• Cross-platform development: Cross-Platform test tool but which one?
@Shashikant86
Things to Consider
• Cross-platform development: Cross-Platform test tool but which one?
• Appium or Detox or Something else? More things to consider……
@Shashikant86
More Things to Consider
• Who will be writing UI test? QA or Developers
@Shashikant86
More Things to Consider
@Shashikant86
if QA {
choose Appium || Detox
} else if developer {
choose platform specific tools || Flutter Drive ||
Xamarin.UITest
} else if developer && QA {
choose agreed tool based on skill
} else {
choose nothing
}
More Things to Consider
• Black-Box or Grey-Box
• Do want to access API and Data from your app?
@Shashikant86
More Things to Consider
• Grey-Box == Detox
• Black-Box == Appium || Flutter Driver
@Shashikant86
More Things to Consider
• In-Process Test or Out-of-Process
• Programming language & Skills
• How much you want to invest in UI Test Automation
• How long your project will be?
• Does your CI server/Service provides out-of -the box support to execute tests?
@Shashikant86
After Making Decision
• “There is no such as wrong decision”. You have to prove that decision taken was
right!
• “When it comes to choices, it’s 100% okay to choose again, and again, and again…”
@Shashikant86
After Making Decision
• Full Dedication on learning and making things work
• Write a first test and configure on CI
• Don’t worry about the test design pattern in the first place.
• Refactor as you go!
• Measure ROI and value provided by test automation.
• Hire smart people with strong experience of decided tools
@Shashikant86
Thanks
• Question?
• Or Contact Me on Twitter @Shashikant86
@Shashikant86
NSTC2019: Choosing CI Friendly Mobile Automation Framework

Más contenido relacionado

La actualidad más candente

Challenges faced in UI automation
Challenges faced in UI automationChallenges faced in UI automation
Challenges faced in UI automation
Srinivas Kantipudi
 

La actualidad más candente (20)

How to Leverage XCUITest for Continuous Testing
How to Leverage XCUITest for Continuous TestingHow to Leverage XCUITest for Continuous Testing
How to Leverage XCUITest for Continuous Testing
 
Eclipse UI automation
Eclipse UI automationEclipse UI automation
Eclipse UI automation
 
Introduction to UI Automation Framework
Introduction to UI Automation FrameworkIntroduction to UI Automation Framework
Introduction to UI Automation Framework
 
CookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomationCookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomation
 
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
 
Mobile automation using appium.pptx
Mobile automation using appium.pptxMobile automation using appium.pptx
Mobile automation using appium.pptx
 
Designing APIs with OpenAPI Spec
Designing APIs with OpenAPI SpecDesigning APIs with OpenAPI Spec
Designing APIs with OpenAPI Spec
 
Effective .NET Core Unit Testing with SQLite and Dapper
Effective .NET Core Unit Testing with SQLite and DapperEffective .NET Core Unit Testing with SQLite and Dapper
Effective .NET Core Unit Testing with SQLite and Dapper
 
IOS ecosystem
IOS ecosystemIOS ecosystem
IOS ecosystem
 
Selenium Camp 2016 - Kiev, Ukraine
Selenium Camp 2016 -  Kiev, UkraineSelenium Camp 2016 -  Kiev, Ukraine
Selenium Camp 2016 - Kiev, Ukraine
 
DevOps Unicorns
DevOps UnicornsDevOps Unicorns
DevOps Unicorns
 
deliver:agile - Enable your Agile Team with Continuous Delivery Pipelines
deliver:agile - Enable your Agile Team with Continuous Delivery Pipelinesdeliver:agile - Enable your Agile Team with Continuous Delivery Pipelines
deliver:agile - Enable your Agile Team with Continuous Delivery Pipelines
 
Intro to Appcelerator Titanium - Code for Fort Lauderdale 2015
Intro to Appcelerator Titanium - Code for Fort Lauderdale 2015Intro to Appcelerator Titanium - Code for Fort Lauderdale 2015
Intro to Appcelerator Titanium - Code for Fort Lauderdale 2015
 
Luis Correia - Instituto de Informática - OSL19
Luis Correia - Instituto de Informática - OSL19Luis Correia - Instituto de Informática - OSL19
Luis Correia - Instituto de Informática - OSL19
 
Challenges faced in UI automation
Challenges faced in UI automationChallenges faced in UI automation
Challenges faced in UI automation
 
Session on Testing Activities in Continuous Integration and Delivery as an Ex...
Session on Testing Activities in Continuous Integration and Delivery as an Ex...Session on Testing Activities in Continuous Integration and Delivery as an Ex...
Session on Testing Activities in Continuous Integration and Delivery as an Ex...
 
Android development at mercari 2015
Android development at mercari 2015Android development at mercari 2015
Android development at mercari 2015
 
Eclipse Testing Day 2010. Xored Q7
Eclipse Testing Day 2010. Xored Q7Eclipse Testing Day 2010. Xored Q7
Eclipse Testing Day 2010. Xored Q7
 
Xp conf-tbd
Xp conf-tbdXp conf-tbd
Xp conf-tbd
 
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
Mca 02 year_exp_unit_automation_testing_ldra_rtrt_c -
 

Similar a NSTC2019: Choosing CI Friendly Mobile Automation Framework

What Good is this Tool? A Guide to Choosing the Right Application Security Te...
What Good is this Tool? A Guide to Choosing the Right Application Security Te...What Good is this Tool? A Guide to Choosing the Right Application Security Te...
What Good is this Tool? A Guide to Choosing the Right Application Security Te...
Kevin Fealey
 

Similar a NSTC2019: Choosing CI Friendly Mobile Automation Framework (20)

How to Go Codeless for Automated Mobile App Testing
How to Go Codeless for Automated Mobile App TestingHow to Go Codeless for Automated Mobile App Testing
How to Go Codeless for Automated Mobile App Testing
 
Building Mobile (app) Masterpiece with Distributed Agile
Building Mobile (app) Masterpiece with Distributed AgileBuilding Mobile (app) Masterpiece with Distributed Agile
Building Mobile (app) Masterpiece with Distributed Agile
 
When & How to Successfully use Test Automation for Mobile Applications
When & How to Successfully use Test Automation for Mobile ApplicationsWhen & How to Successfully use Test Automation for Mobile Applications
When & How to Successfully use Test Automation for Mobile Applications
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and Tools
 
Mastering the Art of Mobile Testing by Akshita Puram
Mastering the Art of Mobile Testing by Akshita PuramMastering the Art of Mobile Testing by Akshita Puram
Mastering the Art of Mobile Testing by Akshita Puram
 
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
 
Fashionable XCUITest for iOS Apps by Shashikant Jagtap
Fashionable XCUITest for iOS Apps by Shashikant JagtapFashionable XCUITest for iOS Apps by Shashikant Jagtap
Fashionable XCUITest for iOS Apps by Shashikant Jagtap
 
Suparna - GDG - 27 Jan 2024 - Emerging Technologies
Suparna - GDG - 27 Jan 2024 - Emerging TechnologiesSuparna - GDG - 27 Jan 2024 - Emerging Technologies
Suparna - GDG - 27 Jan 2024 - Emerging Technologies
 
Introduction to Agile Hardware
Introduction to Agile Hardware Introduction to Agile Hardware
Introduction to Agile Hardware
 
"Building your mobile app: budget, planning and best practices!" by Philippe ...
"Building your mobile app: budget, planning and best practices!" by Philippe ..."Building your mobile app: budget, planning and best practices!" by Philippe ...
"Building your mobile app: budget, planning and best practices!" by Philippe ...
 
CI/CD for mobile at HERE
CI/CD for mobile at HERECI/CD for mobile at HERE
CI/CD for mobile at HERE
 
Real Devices or Emulators: Wen to use What for Automated Testing
Real Devices or Emulators: Wen to use What for Automated TestingReal Devices or Emulators: Wen to use What for Automated Testing
Real Devices or Emulators: Wen to use What for Automated Testing
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
 
Mobile App Quality Roadmap for DevTest Teams
Mobile App Quality Roadmap for DevTest TeamsMobile App Quality Roadmap for DevTest Teams
Mobile App Quality Roadmap for DevTest Teams
 
Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for you
 
Building your Mobile App: Budget, Planning and Best Practices
Building your Mobile App: Budget, Planning and Best PracticesBuilding your Mobile App: Budget, Planning and Best Practices
Building your Mobile App: Budget, Planning and Best Practices
 
Robotic process automation Introduction
Robotic process automation IntroductionRobotic process automation Introduction
Robotic process automation Introduction
 
Architectural Considerations for Startups
Architectural Considerations for StartupsArchitectural Considerations for Startups
Architectural Considerations for Startups
 
What Good is this Tool? A Guide to Choosing the Right Application Security Te...
What Good is this Tool? A Guide to Choosing the Right Application Security Te...What Good is this Tool? A Guide to Choosing the Right Application Security Te...
What Good is this Tool? A Guide to Choosing the Right Application Security Te...
 
10 Emerging Test Frameworks for Cross Browser Testing
10 Emerging Test Frameworks for Cross Browser Testing10 Emerging Test Frameworks for Cross Browser Testing
10 Emerging Test Frameworks for Cross Browser Testing
 

Más de Shashikant Jagtap

Más de Shashikant Jagtap (14)

iOSDevUK Conference- DevOps for iOS Apps
iOSDevUK Conference- DevOps for iOS AppsiOSDevUK Conference- DevOps for iOS Apps
iOSDevUK Conference- DevOps for iOS Apps
 
Vapor london March 2018
Vapor london March 2018Vapor london March 2018
Vapor london March 2018
 
Provisioning iOS CI Server with Ansible
Provisioning iOS CI Server with AnsibleProvisioning iOS CI Server with Ansible
Provisioning iOS CI Server with Ansible
 
Dockerizing BDD : Ruby-Cucumber Example
Dockerizing BDD : Ruby-Cucumber ExampleDockerizing BDD : Ruby-Cucumber Example
Dockerizing BDD : Ruby-Cucumber Example
 
Dockerising Appium : London Appium Meetup
Dockerising Appium : London Appium MeetupDockerising Appium : London Appium Meetup
Dockerising Appium : London Appium Meetup
 
iOS Developers Conference-iOS Automation with Cucumber, Appium and Saucelabs
iOS Developers Conference-iOS Automation with Cucumber, Appium and SaucelabsiOS Developers Conference-iOS Automation with Cucumber, Appium and Saucelabs
iOS Developers Conference-iOS Automation with Cucumber, Appium and Saucelabs
 
iOS Automation with Cucumber, Appium and Saucelabs
iOS Automation with Cucumber, Appium and SaucelabsiOS Automation with Cucumber, Appium and Saucelabs
iOS Automation with Cucumber, Appium and Saucelabs
 
Headless BDD & Responsive Test Automation
Headless BDD & Responsive Test AutomationHeadless BDD & Responsive Test Automation
Headless BDD & Responsive Test Automation
 
Headless BDD
Headless BDDHeadless BDD
Headless BDD
 
ATDD with Behat and Selenium (LDNSE6)
ATDD with Behat and Selenium (LDNSE6)ATDD with Behat and Selenium (LDNSE6)
ATDD with Behat and Selenium (LDNSE6)
 
Behat sauce
Behat sauceBehat sauce
Behat sauce
 
BDD using Behat, Selenium,Sahi and SauceLabs
BDD using Behat, Selenium,Sahi and SauceLabsBDD using Behat, Selenium,Sahi and SauceLabs
BDD using Behat, Selenium,Sahi and SauceLabs
 
BDD with Behat Selenium, Sahi and Sauce
BDD with Behat Selenium, Sahi and SauceBDD with Behat Selenium, Sahi and Sauce
BDD with Behat Selenium, Sahi and Sauce
 
Test Framework for Acne Selenium+Sahi
Test Framework for Acne Selenium+SahiTest Framework for Acne Selenium+Sahi
Test Framework for Acne Selenium+Sahi
 

Último

Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
MayuraD1
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
jaanualu31
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 

Último (20)

Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptx
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
 
Moment Distribution Method For Btech Civil
Moment Distribution Method For Btech CivilMoment Distribution Method For Btech Civil
Moment Distribution Method For Btech Civil
 
Wadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptxWadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptx
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equation
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 

NSTC2019: Choosing CI Friendly Mobile Automation Framework

  • 1.
  • 2.
  • 3. Choosing a CI friendly Mobile Test Automation Framework National Software Testing Conference 2019 The British Museum, London Shashikant Jagtap [XCTEQ Limited ] @Shashikant86
  • 4. Agenda • Mobile App Development Technologies • Mobile Test Automation Frameworks • Mobile Test Automation & CI/CD Pipelines • How to make decision? @Shashikant86
  • 5. Mobile Platforms • iOS ( Apple ) • Android ( Google ) • Windows ( Microsoft ) • Symbian and many more… @Shashikant86
  • 7. Mobile Development Technologies • Native ( Swift & Kotlin ) • React Native ( JavaScript ) • Xamarin ( C# ) • Flutter ( Dart ) • Ionic, Cordova …….. @Shashikant86
  • 8. Native vs Cross-Platform • Native tools and technologies are the best and preferred if budget and deadlines are feasible @Shashikant86
  • 9. Native vs Cross-Platform • Native tools are the best but …. • Project Budget • Project Deadlines • Hiring Cost • Separate Skills • So companies make decision to use cross-platform tools @Shashikant86
  • 10. Native Mobile UI Test Automation • XCUITest ( Apple ) • Expresso ( Google ) @Shashikant86
  • 11. Benefits of Native UI Test tools • Fast • Test code goes into the apps code • Dev/Test Collaboration • Easy to plug into CI system • Maintained by Google or Apple @Shashikant86
  • 12. Cross-Platform Mobile UI Test Tools • Appium • Detox @Shashikant86
  • 13. Framework Specific Mobile UI Test Tools • Flutter ( Flutter Driver ) • Xamarin ( Xamarin.UITest ) • React Native ( No Official Support for UI Testing ) @Shashikant86
  • 14. Commercial Mobile UI Test Tools • Many more Commercial or Paid Mobile Test Automation tools. @Shashikant86
  • 15. How to choose Mobile Test Framework? • OMG! There are so many options. How do I choose the test framework for my mobile app? @Shashikant86
  • 16. Mobile UI Test Tools + CI • Native Tools are easy and faster for CI Pipelines • Third-party tools required additional setup and custom scripting • Third-party tools required pre-built app for every CI build • Real Device Testing Services adds additional complexity for CI • Some CI Server/Services has out of the box Support for Mobile UI Testing @Shashikant86
  • 17. Tool Selection: Usual Process • Pick the most commonly used framework and hope that I will work for your app ( e.g Appium ) @Shashikant86
  • 18. Tool Selection: Usual Process • Pick the most commonly used framework and hope that will work for your app ( e.g Appium ) • Your engineer/QA have used it before so it would be easy to setup and use • That’s hot in the market, let’s pick that for our project • That’s too new, let’s not try it before someone else share their experience. • It’s open-source has too many or not too many contributors • Its build by famous company so it would be good. • Why use others? Let’s build our own. @Shashikant86
  • 19. Things to Consider • Native App - Native Test Tools (XCUITest and Espresso), No brainer! @Shashikant86
  • 20. Things to Consider • Cross-platform development: Cross-Platform test tool but which one? @Shashikant86
  • 21. Things to Consider • Cross-platform development: Cross-Platform test tool but which one? • Appium or Detox or Something else? More things to consider…… @Shashikant86
  • 22. More Things to Consider • Who will be writing UI test? QA or Developers @Shashikant86
  • 23. More Things to Consider @Shashikant86 if QA { choose Appium || Detox } else if developer { choose platform specific tools || Flutter Drive || Xamarin.UITest } else if developer && QA { choose agreed tool based on skill } else { choose nothing }
  • 24. More Things to Consider • Black-Box or Grey-Box • Do want to access API and Data from your app? @Shashikant86
  • 25. More Things to Consider • Grey-Box == Detox • Black-Box == Appium || Flutter Driver @Shashikant86
  • 26. More Things to Consider • In-Process Test or Out-of-Process • Programming language & Skills • How much you want to invest in UI Test Automation • How long your project will be? • Does your CI server/Service provides out-of -the box support to execute tests? @Shashikant86
  • 27. After Making Decision • “There is no such as wrong decision”. You have to prove that decision taken was right! • “When it comes to choices, it’s 100% okay to choose again, and again, and again…” @Shashikant86
  • 28. After Making Decision • Full Dedication on learning and making things work • Write a first test and configure on CI • Don’t worry about the test design pattern in the first place. • Refactor as you go! • Measure ROI and value provided by test automation. • Hire smart people with strong experience of decided tools @Shashikant86
  • 29. Thanks • Question? • Or Contact Me on Twitter @Shashikant86 @Shashikant86