SlideShare a Scribd company logo
1 of 16
{}{}{}{}{}{}{}{}{}{}{}{}{}{} 
{}{}{}{}{}{}{}{}{}{}{}{}{}{} 
{}{}{}{}{}{}{}{}{}{}{}{}{}{} 
Enterprise Ready Test Execution Platform 
{}{}{}{}{}{}{}{}{}{}{}{}{}{} 
Vijayan Srinivasan, Rahul Kumar 
{}{}{}{} 
Akshatha Udupa 
Intuit Proprietary & Confidential
Why Apps Fail? 
Intuit Proprietary & Confidential 
2
Emulators are not the Solution ! 
• Emulators/simulators won’t help you to test… 
– User Experience and Usability 
– Hardware 
– Software 
– Infrastructure 
Intuit Proprietary & Confidential 
3 
0%of your app users use emulator to run your app!
Comparison of Test Automation Frameworks 
Intuit Proprietary & Confidential 
4
Intuit UI Test Frameworks 
Intuit Proprietary & Confidential 
Mobile UI Test 
Frameworks 
Web UI Test Frameworks 
50.0% 91.67%
Thanks to Quality Community!! 
• Appium is built on the idea that testing 
native apps shouldn't require including an 
SDK or recompiling your app 
• Able to use your preferred test practices, 
frameworks, and tools 
Intuit Proprietary & Confidential 
6
“Hello World” 
Intuit Proprietary & Confidential 
7 
TestNG test case 
Appium Java 
Client 
Appium Node 
USB 
REST API 
Session 
• Driver driver = new AndroidDriver( 
new URL ( "http://SSeettuupp 
localhost:4723/wd/hub" ), 
capabilities); 
• driver.findElement(By. name( “ 
Sign_In_button" )); 
• driver.click(); 
AAsssseerrtt 
• driver.quit(); 
TTeeaarr DDoowwnn
Parallel Test Execution 
Intuit Proprietary & Confidential 
8 
TestNG test case 
Appium Java 
Client 
REST API REST API 
REST API
Downside of Selenium Grid 
• Not available as a Web Application to run from Intuit Standard 
Containers (Tomcat, WHP) 
• Device registry is maintained in-memory 
• No support for High Availability / Disaster Recovery 
• No support for External Device Cloud 
• Not much debugging support (Screenshot, Exception or Log messages) 
Intuit Proprietary & Confidential 
9
Introducing Test Execution Platform (TEP) 
• Develop the test and forget the rest 
 One stop shop for Web and Mobile automation testing 
• No additional SDK or recompilation of native apps just for testing 
• Leverage open source technologies 
• Align with Intuit services fabric architecture 
• Easy to maintain and horizontally scalable 
• Support for third party integration 
Intuit Proprietary & Confidential 
10
High Level Architecture 
TEP 
(Intuit 
Selenium 
Grid) 
Intuit Proprietary & Confidential 
IDE/Jenkins 
Test Cases 
Intuit Selenium 
Driver 
Intuit Lab 
External Lab 
REST API 
REST API 
REST API
Why Intuit Selenium Grid ? 
Intuit Proprietary & Confidential 
12 
LAB 
TEP DATA CENTER INFRASTRUCTURE INFRASTRUCTURE 
QYDC LTM 
APP SERVER 1 
APP SERVER N 
REQUEST FROM API GATEWAY – WebDriver 
Requests 
driver. 
findElement() 
driver. 
findElement().click()
Why Intuit Web Driver ? 
Intuit Selenium 
WebDriver 
capability.setCapability("intuitAPIKey",“put the api key here"); 
driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), 
capability); 
Intuit Proprietary & Confidential 
13 
IDE / Jenkins 
Test Cases 
Web Driver 
TEP 
Internal Lab 
Devices 
Emulators 
External Lab 
Devices 
Emulators 
2 
1 
3 
capability.setCapability("intuitAPIKey",“put the api key here"); 
driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), 
capability);
Why Intuit Web Driver ? 
Intuit Proprietary & Confidential 
driver = new RemoteWebDriver(new URL(<URL>), 
capability); 
14 
IDE / Jenkins 
Test Cases 
Web Driver 
TEP 
Internal Lab 
Devices 
Emulators 
External Lab 
Devices 
Emulators 
2 
1 
3 
driver = new RemoteWebDriver(new URL(<URL>), 
capability);
Why Intuit Web Driver ? 
Poll and Retry mechanism 
IDE / Jenkins 
Test Cases 
Intuit 
Selenium WebDriver 
Return with Temp 
Return with 
Return with 
SessionID 
Appium SessionID 
capability.setCapability(“isWait",“true"); 
driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), 
capability); 
capability.setCapability(“isWait",“true"); 
driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), 
capability); 
Intuit Proprietary 15 & Confidential 
TEP 
AAnnddrrooidid 4 4.4.4 
Return with Temp 
SessionID 
Appium SessionID
Benefits 
From To 
Intuit Proprietary & Confidential 
 6 days of White Glove 
onboarding 
3 Steps/ 5 mins of Self-Service 
Onboarding 
 Many different Test Frameworks One Standard Framework 
 Individual solutions for Web and 
Mobile automation testing 
One stop shop for Web and 
Mobile automation testing 
 Engineering support for 
maintenance after onboarding 
Zero maintenance on the 
Platform side 
 High-Risk with no HA/DR Complete HA/DR across Data 
Centers and Labs

More Related Content

What's hot

Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...
Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...
Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...Applitools
 
Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao
Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao
Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao Applitools
 
Integrate Visual AI Into Your Appium Scripts in Minutes
Integrate Visual AI Into Your Appium Scripts in MinutesIntegrate Visual AI Into Your Appium Scripts in Minutes
Integrate Visual AI Into Your Appium Scripts in MinutesApplitools
 
Testing Tools with AI
Testing Tools with AITesting Tools with AI
Testing Tools with AIVodqaBLR
 
Applitools - Visual AI
Applitools - Visual AIApplitools - Visual AI
Applitools - Visual AIApplitools
 
Applitools Framework
Applitools  FrameworkApplitools  Framework
Applitools FrameworkApplitools
 
API Testing With Katalon Studio
API Testing With Katalon StudioAPI Testing With Katalon Studio
API Testing With Katalon StudioKnoldus Inc.
 
Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?Dmitriy Gumeniuk
 
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Ori Bendet
 
Automated Visual Testing in NSW.Gov.AU
Automated Visual Testing in NSW.Gov.AUAutomated Visual Testing in NSW.Gov.AU
Automated Visual Testing in NSW.Gov.AUApplitools
 
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 TestingSauce Labs
 
The Right Tool for the Right Project
The Right Tool for the Right ProjectThe Right Tool for the Right Project
The Right Tool for the Right ProjectOri Bendet
 
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debugging
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debuggingATAGTR2017 Upgrading a mobile tester's weapons with advanced debugging
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debuggingAgile Testing Alliance
 
Kloia Quality Assurance
Kloia Quality AssuranceKloia Quality Assurance
Kloia Quality Assurancekloia
 
Stop Testing (Only) The Functionality of Your Mobile Apps!
Stop Testing (Only) The Functionality of Your Mobile Apps!Stop Testing (Only) The Functionality of Your Mobile Apps!
Stop Testing (Only) The Functionality of Your Mobile Apps!Applitools
 
Making the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated TestingMaking the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated TestingSauce Labs
 
Measuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinarMeasuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinarSauce Labs
 
The State of Testing 2017
The State of Testing 2017The State of Testing 2017
The State of Testing 2017SmartBear
 

What's hot (20)

Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...
Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...
Top 5 Features To Look for in a Codeless Automation Solution -- Presentation ...
 
Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao
Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao
Modern Functional Test Automation Through Visual AI - webinar w/ Raja Rao
 
Integrate Visual AI Into Your Appium Scripts in Minutes
Integrate Visual AI Into Your Appium Scripts in MinutesIntegrate Visual AI Into Your Appium Scripts in Minutes
Integrate Visual AI Into Your Appium Scripts in Minutes
 
Testing Tools with AI
Testing Tools with AITesting Tools with AI
Testing Tools with AI
 
Applitools - Visual AI
Applitools - Visual AIApplitools - Visual AI
Applitools - Visual AI
 
Applitools Framework
Applitools  FrameworkApplitools  Framework
Applitools Framework
 
API Testing With Katalon Studio
API Testing With Katalon StudioAPI Testing With Katalon Studio
API Testing With Katalon Studio
 
Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?
 
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
 
Automated Visual Testing in NSW.Gov.AU
Automated Visual Testing in NSW.Gov.AUAutomated Visual Testing in NSW.Gov.AU
Automated Visual Testing in NSW.Gov.AU
 
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
 
The Right Tool for the Right Project
The Right Tool for the Right ProjectThe Right Tool for the Right Project
The Right Tool for the Right Project
 
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debugging
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debuggingATAGTR2017 Upgrading a mobile tester's weapons with advanced debugging
ATAGTR2017 Upgrading a mobile tester's weapons with advanced debugging
 
ATAGTR2017 Wearable App Testing
ATAGTR2017 Wearable App TestingATAGTR2017 Wearable App Testing
ATAGTR2017 Wearable App Testing
 
Kloia Quality Assurance
Kloia Quality AssuranceKloia Quality Assurance
Kloia Quality Assurance
 
Stop Testing (Only) The Functionality of Your Mobile Apps!
Stop Testing (Only) The Functionality of Your Mobile Apps!Stop Testing (Only) The Functionality of Your Mobile Apps!
Stop Testing (Only) The Functionality of Your Mobile Apps!
 
Making the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated TestingMaking the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated Testing
 
Measuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinarMeasuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinar
 
Continuous Testing
Continuous TestingContinuous Testing
Continuous Testing
 
The State of Testing 2017
The State of Testing 2017The State of Testing 2017
The State of Testing 2017
 

Viewers also liked

TMF2014 CI-CD Workshop Michael Palotas
TMF2014 CI-CD Workshop Michael PalotasTMF2014 CI-CD Workshop Michael Palotas
TMF2014 CI-CD Workshop Michael PalotasKJR
 
Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...
Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...
Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...Michel Duchateau
 
Combining Front-End and Backend Testing with Sauce Labs & BlazeMeter
Combining Front-End and Backend Testing with Sauce Labs & BlazeMeterCombining Front-End and Backend Testing with Sauce Labs & BlazeMeter
Combining Front-End and Backend Testing with Sauce Labs & BlazeMeterSauce Labs
 
Cross Platform Appium Tests: How To
Cross Platform Appium Tests: How ToCross Platform Appium Tests: How To
Cross Platform Appium Tests: How ToGlobalLogic Ukraine
 
Continuous Testing of eCommerce Apps
Continuous Testing of eCommerce AppsContinuous Testing of eCommerce Apps
Continuous Testing of eCommerce AppsSauce Labs
 
The Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous IntegrationThe Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous IntegrationSauce Labs
 
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs WebinarHow To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs WebinarSauce Labs
 
Seminar continuous delivery 19092013
Seminar continuous delivery 19092013Seminar continuous delivery 19092013
Seminar continuous delivery 19092013Joris De Winne
 
Managers, Future Proof Your Automation
Managers, Future Proof Your AutomationManagers, Future Proof Your Automation
Managers, Future Proof Your AutomationSauce Labs
 
Muusad1 091213080053-phpapp01
Muusad1 091213080053-phpapp01Muusad1 091213080053-phpapp01
Muusad1 091213080053-phpapp01Elis Sarapuu
 
Chapter 8 presentation
Chapter 8 presentationChapter 8 presentation
Chapter 8 presentationmeganmcleod
 
Konekt.me slide deck 20:11:12
Konekt.me slide deck 20:11:12Konekt.me slide deck 20:11:12
Konekt.me slide deck 20:11:12maseratimartin
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4rajarshir
 
Matrice Distributie Articole-Clienti by TPC CONCEPT
Matrice Distributie Articole-Clienti by TPC CONCEPTMatrice Distributie Articole-Clienti by TPC CONCEPT
Matrice Distributie Articole-Clienti by TPC CONCEPTTPC CONCEPT
 
CARVEX PS 420
CARVEX PS 420CARVEX PS 420
CARVEX PS 420liub_tts
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4rajarshir
 

Viewers also liked (20)

TMF2014 CI-CD Workshop Michael Palotas
TMF2014 CI-CD Workshop Michael PalotasTMF2014 CI-CD Workshop Michael Palotas
TMF2014 CI-CD Workshop Michael Palotas
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...
Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...
Lean Startup and Agile methods - Startups.be Tech Startup Day - Michel Duchat...
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Combining Front-End and Backend Testing with Sauce Labs & BlazeMeter
Combining Front-End and Backend Testing with Sauce Labs & BlazeMeterCombining Front-End and Backend Testing with Sauce Labs & BlazeMeter
Combining Front-End and Backend Testing with Sauce Labs & BlazeMeter
 
Cross Platform Appium Tests: How To
Cross Platform Appium Tests: How ToCross Platform Appium Tests: How To
Cross Platform Appium Tests: How To
 
Continuous Testing of eCommerce Apps
Continuous Testing of eCommerce AppsContinuous Testing of eCommerce Apps
Continuous Testing of eCommerce Apps
 
The Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous IntegrationThe Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous Integration
 
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs WebinarHow To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
 
Seminar continuous delivery 19092013
Seminar continuous delivery 19092013Seminar continuous delivery 19092013
Seminar continuous delivery 19092013
 
Managers, Future Proof Your Automation
Managers, Future Proof Your AutomationManagers, Future Proof Your Automation
Managers, Future Proof Your Automation
 
Muusad1 091213080053-phpapp01
Muusad1 091213080053-phpapp01Muusad1 091213080053-phpapp01
Muusad1 091213080053-phpapp01
 
Astrologia
AstrologiaAstrologia
Astrologia
 
Chapter 8 presentation
Chapter 8 presentationChapter 8 presentation
Chapter 8 presentation
 
Konekt.me slide deck 20:11:12
Konekt.me slide deck 20:11:12Konekt.me slide deck 20:11:12
Konekt.me slide deck 20:11:12
 
Tics
TicsTics
Tics
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4
 
Matrice Distributie Articole-Clienti by TPC CONCEPT
Matrice Distributie Articole-Clienti by TPC CONCEPTMatrice Distributie Articole-Clienti by TPC CONCEPT
Matrice Distributie Articole-Clienti by TPC CONCEPT
 
CARVEX PS 420
CARVEX PS 420CARVEX PS 420
CARVEX PS 420
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4
 

Similar to Enterprise Ready Test Execution Platform for Mobile Apps

Java Test Automation for REST, Web and Mobile
Java Test Automation for REST, Web and MobileJava Test Automation for REST, Web and Mobile
Java Test Automation for REST, Web and MobileElias Nogueira
 
Automated Testing using JavaScript
Automated Testing using JavaScriptAutomated Testing using JavaScript
Automated Testing using JavaScriptSimon Guest
 
Good practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium testsGood practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium testsAbhijeet Vaikar
 
Cloud Platforms for Java
Cloud Platforms for JavaCloud Platforms for Java
Cloud Platforms for Java3Pillar Global
 
UI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLCUI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLCJim Lane
 
Nonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the CoinNonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the CoinTechWell
 
JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...
JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...
JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...terrencebarr
 
Real world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviewsReal world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviewsABSoft Trainings
 
Testing your application on Google App Engine
Testing your application on Google App EngineTesting your application on Google App Engine
Testing your application on Google App EngineInphina Technologies
 
Testing Your Application On Google App Engine
Testing Your Application On Google App EngineTesting Your Application On Google App Engine
Testing Your Application On Google App EngineIndicThreads
 
Sakai10 Selenium Workshop
Sakai10 Selenium WorkshopSakai10 Selenium Workshop
Sakai10 Selenium Workshopcoreyjack
 
JCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptxJCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptxGrace Jansen
 
Operating a High Velocity Large Organization with Spring Cloud Microservices
Operating a High Velocity Large Organization with Spring Cloud MicroservicesOperating a High Velocity Large Organization with Spring Cloud Microservices
Operating a High Velocity Large Organization with Spring Cloud MicroservicesNoriaki Tatsumi
 
RAJESH KHANNA QA Engineer
RAJESH KHANNA QA EngineerRAJESH KHANNA QA Engineer
RAJESH KHANNA QA EngineerRajesh khanna
 
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A CookbookJavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A CookbookJorge Hidalgo
 
Leverage Virtual Design to Build a Better System
Leverage Virtual Design to Build a Better SystemLeverage Virtual Design to Build a Better System
Leverage Virtual Design to Build a Better SystemRockwell Automation
 
QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER Piyush Prakash
 
Leveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleLeveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleTechWell
 
Advanced Selenium Workshop
Advanced Selenium WorkshopAdvanced Selenium Workshop
Advanced Selenium WorkshopClever Moe
 

Similar to Enterprise Ready Test Execution Platform for Mobile Apps (20)

Java Test Automation for REST, Web and Mobile
Java Test Automation for REST, Web and MobileJava Test Automation for REST, Web and Mobile
Java Test Automation for REST, Web and Mobile
 
Automated Testing using JavaScript
Automated Testing using JavaScriptAutomated Testing using JavaScript
Automated Testing using JavaScript
 
Good practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium testsGood practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium tests
 
Cloud Platforms for Java
Cloud Platforms for JavaCloud Platforms for Java
Cloud Platforms for Java
 
UI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLCUI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLC
 
Nonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the CoinNonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the Coin
 
JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...
JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...
JavaOne 2015: CON 3437 - Smart Devices for the Internet of Things ...
 
Selenium
SeleniumSelenium
Selenium
 
Real world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviewsReal world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviews
 
Testing your application on Google App Engine
Testing your application on Google App EngineTesting your application on Google App Engine
Testing your application on Google App Engine
 
Testing Your Application On Google App Engine
Testing Your Application On Google App EngineTesting Your Application On Google App Engine
Testing Your Application On Google App Engine
 
Sakai10 Selenium Workshop
Sakai10 Selenium WorkshopSakai10 Selenium Workshop
Sakai10 Selenium Workshop
 
JCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptxJCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptx
 
Operating a High Velocity Large Organization with Spring Cloud Microservices
Operating a High Velocity Large Organization with Spring Cloud MicroservicesOperating a High Velocity Large Organization with Spring Cloud Microservices
Operating a High Velocity Large Organization with Spring Cloud Microservices
 
RAJESH KHANNA QA Engineer
RAJESH KHANNA QA EngineerRAJESH KHANNA QA Engineer
RAJESH KHANNA QA Engineer
 
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A CookbookJavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
 
Leverage Virtual Design to Build a Better System
Leverage Virtual Design to Build a Better SystemLeverage Virtual Design to Build a Better System
Leverage Virtual Design to Build a Better System
 
QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER
 
Leveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleLeveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver Example
 
Advanced Selenium Workshop
Advanced Selenium WorkshopAdvanced Selenium Workshop
Advanced Selenium Workshop
 

Enterprise Ready Test Execution Platform for Mobile Apps

  • 1. {}{}{}{}{}{}{}{}{}{}{}{}{}{} {}{}{}{}{}{}{}{}{}{}{}{}{}{} {}{}{}{}{}{}{}{}{}{}{}{}{}{} Enterprise Ready Test Execution Platform {}{}{}{}{}{}{}{}{}{}{}{}{}{} Vijayan Srinivasan, Rahul Kumar {}{}{}{} Akshatha Udupa Intuit Proprietary & Confidential
  • 2. Why Apps Fail? Intuit Proprietary & Confidential 2
  • 3. Emulators are not the Solution ! • Emulators/simulators won’t help you to test… – User Experience and Usability – Hardware – Software – Infrastructure Intuit Proprietary & Confidential 3 0%of your app users use emulator to run your app!
  • 4. Comparison of Test Automation Frameworks Intuit Proprietary & Confidential 4
  • 5. Intuit UI Test Frameworks Intuit Proprietary & Confidential Mobile UI Test Frameworks Web UI Test Frameworks 50.0% 91.67%
  • 6. Thanks to Quality Community!! • Appium is built on the idea that testing native apps shouldn't require including an SDK or recompiling your app • Able to use your preferred test practices, frameworks, and tools Intuit Proprietary & Confidential 6
  • 7. “Hello World” Intuit Proprietary & Confidential 7 TestNG test case Appium Java Client Appium Node USB REST API Session • Driver driver = new AndroidDriver( new URL ( "http://SSeettuupp localhost:4723/wd/hub" ), capabilities); • driver.findElement(By. name( “ Sign_In_button" )); • driver.click(); AAsssseerrtt • driver.quit(); TTeeaarr DDoowwnn
  • 8. Parallel Test Execution Intuit Proprietary & Confidential 8 TestNG test case Appium Java Client REST API REST API REST API
  • 9. Downside of Selenium Grid • Not available as a Web Application to run from Intuit Standard Containers (Tomcat, WHP) • Device registry is maintained in-memory • No support for High Availability / Disaster Recovery • No support for External Device Cloud • Not much debugging support (Screenshot, Exception or Log messages) Intuit Proprietary & Confidential 9
  • 10. Introducing Test Execution Platform (TEP) • Develop the test and forget the rest  One stop shop for Web and Mobile automation testing • No additional SDK or recompilation of native apps just for testing • Leverage open source technologies • Align with Intuit services fabric architecture • Easy to maintain and horizontally scalable • Support for third party integration Intuit Proprietary & Confidential 10
  • 11. High Level Architecture TEP (Intuit Selenium Grid) Intuit Proprietary & Confidential IDE/Jenkins Test Cases Intuit Selenium Driver Intuit Lab External Lab REST API REST API REST API
  • 12. Why Intuit Selenium Grid ? Intuit Proprietary & Confidential 12 LAB TEP DATA CENTER INFRASTRUCTURE INFRASTRUCTURE QYDC LTM APP SERVER 1 APP SERVER N REQUEST FROM API GATEWAY – WebDriver Requests driver. findElement() driver. findElement().click()
  • 13. Why Intuit Web Driver ? Intuit Selenium WebDriver capability.setCapability("intuitAPIKey",“put the api key here"); driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), capability); Intuit Proprietary & Confidential 13 IDE / Jenkins Test Cases Web Driver TEP Internal Lab Devices Emulators External Lab Devices Emulators 2 1 3 capability.setCapability("intuitAPIKey",“put the api key here"); driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), capability);
  • 14. Why Intuit Web Driver ? Intuit Proprietary & Confidential driver = new RemoteWebDriver(new URL(<URL>), capability); 14 IDE / Jenkins Test Cases Web Driver TEP Internal Lab Devices Emulators External Lab Devices Emulators 2 1 3 driver = new RemoteWebDriver(new URL(<URL>), capability);
  • 15. Why Intuit Web Driver ? Poll and Retry mechanism IDE / Jenkins Test Cases Intuit Selenium WebDriver Return with Temp Return with Return with SessionID Appium SessionID capability.setCapability(“isWait",“true"); driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), capability); capability.setCapability(“isWait",“true"); driver = TEPRemoteWebDriver.getRemoteDriver(new URL(<URL>), capability); Intuit Proprietary 15 & Confidential TEP AAnnddrrooidid 4 4.4.4 Return with Temp SessionID Appium SessionID
  • 16. Benefits From To Intuit Proprietary & Confidential  6 days of White Glove onboarding 3 Steps/ 5 mins of Self-Service Onboarding  Many different Test Frameworks One Standard Framework  Individual solutions for Web and Mobile automation testing One stop shop for Web and Mobile automation testing  Engineering support for maintenance after onboarding Zero maintenance on the Platform side  High-Risk with no HA/DR Complete HA/DR across Data Centers and Labs