SlideShare a Scribd company logo
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

More Related Content

What's hot

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

What's hot (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 to 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 to 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
 

More from Shashikant Jagtap

More from 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
 

Recently uploaded

power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
ViniHema
 
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
Atif Razi
 
Hall booking system project report .pdf
Hall booking system project report  .pdfHall booking system project report  .pdf
Hall booking system project report .pdf
Kamal Acharya
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
ssuser9bd3ba
 
Fruit shop management system project report.pdf
Fruit shop management system project report.pdfFruit shop management system project report.pdf
Fruit shop management system project report.pdf
Kamal Acharya
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 

Recently uploaded (20)

fluid mechanics gate notes . gate all pyqs answer
fluid mechanics gate notes . gate all pyqs answerfluid mechanics gate notes . gate all pyqs answer
fluid mechanics gate notes . gate all pyqs answer
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
fundamentals of drawing and isometric and orthographic projection
fundamentals of drawing and isometric and orthographic projectionfundamentals of drawing and isometric and orthographic projection
fundamentals of drawing and isometric and orthographic projection
 
power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
 
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
 
A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdf
A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdfA CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdf
A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdf
 
Hall booking system project report .pdf
Hall booking system project report  .pdfHall booking system project report  .pdf
Hall booking system project report .pdf
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
 
2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
İTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering WorkshopİTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering Workshop
 
Scaling in conventional MOSFET for constant electric field and constant voltage
Scaling in conventional MOSFET for constant electric field and constant voltageScaling in conventional MOSFET for constant electric field and constant voltage
Scaling in conventional MOSFET for constant electric field and constant voltage
 
Fruit shop management system project report.pdf
Fruit shop management system project report.pdfFruit shop management system project report.pdf
Fruit shop management system project report.pdf
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
Toll tax management system project report..pdf
Toll tax management system project report..pdfToll tax management system project report..pdf
Toll tax management system project report..pdf
 
ENERGY STORAGE DEVICES INTRODUCTION UNIT-I
ENERGY STORAGE DEVICES  INTRODUCTION UNIT-IENERGY STORAGE DEVICES  INTRODUCTION UNIT-I
ENERGY STORAGE DEVICES INTRODUCTION UNIT-I
 
Democratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek AryaDemocratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek Arya
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
Introduction to Machine Learning Unit-5 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-5 Notes for II-II Mechanical EngineeringIntroduction to Machine Learning Unit-5 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-5 Notes for II-II Mechanical Engineering
 
Halogenation process of chemical process industries
Halogenation process of chemical process industriesHalogenation process of chemical process industries
Halogenation process of chemical process industries
 

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