SlideShare ist ein Scribd-Unternehmen logo
1 von 41
Downloaden Sie, um offline zu lesen
Integra(on	
  tes(ng	
  in	
  
Enterprises	
  using	
  TaaS	
  

            Anand	
  Bagmar	
  
       So#ware	
  Quality	
  Evangelist	
  
   Principal	
  Consultant,	
  ThoughtWorks	
  
Organiza?on	
  Objec?ve	
  
Business	
  spread	
  across	
  the	
  globe	
  
Test	
  Automa?on	
  
Is	
  Test	
  Automa?on	
  treated	
  as	
  1st	
  class	
  ci?zen	
  in	
  
your	
  organiza?on?	
  
•  Value	
  
•  Quality	
  
Quick	
  survey	
  
•    Part	
  of	
  a	
  large	
  organiza?on?	
  
•    #	
  of	
  products	
  in	
  the	
  porLolio?	
  
•    #	
  of	
  projects	
  across	
  all	
  these	
  products?	
  
•    Technology	
  stack	
  of	
  these	
  products?	
  
•    Part	
  of	
  merged	
  /	
  acquired	
  companies?	
  	
  
      –  Same	
  technology	
  of	
  “new”	
  products?	
  
•  Distributed	
  teams?	
  
•  Common	
  Test	
  Automa?on	
  framework?	
  
Case	
  Study	
  
Outlook	
  Web	
  
                                                  Outlook	
  Sync	
  
                            Access	
  (OWA)	
  
                                                   (Android)	
  
                              (Browser)	
  


     Outlook	
  (Mac)	
                                                 …	
  




 Outlook	
  
(Windows)	
                             Outlook	
                               …	
  
How	
  will	
  you	
  automate	
  these?	
  
The	
  solu?on	
  




Outlook	
  for	
           Outlook	
  for	
     Outlook	
  Web	
       Outlook	
  Sync	
  
Windows	
                  Mac	
                Access	
               for	
  Android	
  
•  White	
  /	
  QTP	
     •  Automator	
       (OWA)	
                •  Robo?um	
  /	
  
                                                •  Selenium	
  /	
        Java	
  
                                                   Ruby	
  
For	
  a	
  user	
  who	
  has	
  installed	
  Outlook	
  on	
  
         –  Windows	
  OS	
  –	
  desktop	
  version,	
  and,	
  
         –  Mac	
  OS	
  –	
  desktop	
  version	
  
         –  Android	
  device	
  –	
  na?ve	
  mobile	
  app	
  
	
  
                           How	
  will	
  you	
  test	
  ….	
  
                                          	
  
       An	
  email	
  dra7ed	
  in	
  one	
  product	
  is	
  reflected	
  in	
  
                          the	
  other	
  products	
  	
  
Can	
  you	
  use	
  the	
  same	
  technology	
  
 stack	
  for	
  tes(ng	
  each	
  variant	
  of	
  
                   Outlook?	
  
On	
  Windows	
  
•  Create	
  an	
  email	
  and	
  save	
  it	
  as	
  dra#	
  

       In	
  Browser	
  (OWA)	
  
       •  Verify	
  dra#	
  email	
  is	
  seen	
  

              On	
  Mac	
  
              •  Verify	
  dra#	
  email	
  is	
  seen	
  

                     On	
  Android	
  
                     •  Verify	
  dra#	
  email	
  is	
  seen	
  


                            …	
  
…	
  

        In	
  OWA	
  
        •  Change	
  the	
  dra#	
  email	
  content	
  

              On	
  Windows	
  
              •  Verify	
  updated	
  email	
  content	
  is	
  seen	
  

                    On	
  Mac	
  
                    •  Verify	
  updated	
  email	
  content	
  is	
  seen	
  

                          On	
  Android	
  
                          •  Verify	
  updated	
  email	
  content	
  is	
  seen	
  
The	
  problem	
  




Outlook	
  for	
           Outlook	
  for	
     Outlook	
  Web	
       Outlook	
  Sync	
  
Windows	
                  Mac	
                Access	
               for	
  Android	
  
•  White	
  /	
  QTP	
     •  Automator	
       (OWA)	
                •  Robo?um	
  /	
  
                                                •  Selenium	
  /	
        Java	
  
                                                   Ruby	
  
The	
  solu(on	
  
Create	
  &	
  Save	
                        (Test	
  
                      as	
  DraE	
                              Framework	
  
                                                                    for)	
  	
  
                           1	
  
                                                                Outlook	
  on	
  
                                                                 Windows	
  
                                                                      	
  
                           4	
         Verify	
  DraE	
  
  End-­‐2-­‐End	
  
 Integra-on	
  
     Test	
                            Verify	
  DraE	
  	
  
                           2	
             present	
               (Test	
  
                                                                Framework	
  
                                                                    for)	
  
                           3	
                                    Outlook	
  
Orchestrator	
                                                    Sync	
  on	
  
                      Modify	
  DraE	
  
                                                                  Android	
  
                                                                      	
  
Create	
  &	
  Save	
                                   Test	
  
                                as	
  DraE	
                                         Framework	
  
                                                                           TaaS	
        for	
  	
  
                                     1	
  
                                                                          Server	
   Outlook	
  on	
  
                                                                                      Windows	
  
                                                                                          	
  
                                     4	
         Verify	
  DraE	
  
 End-­‐2-­‐End	
  
Integra-on	
   TaaS	
                                                       Service	
  Providers	
  
    Test	
         Client	
  
Framework	
                                      Verify	
  DraE	
  	
  
                                     2	
             present	
  
                                                                                           Test	
  
                                                                                    Framework	
  
                                     3	
                                   TaaS	
   for	
  Outlook	
  
     Orchestrator	
                                                       Server	
   Sync	
  on	
  
                                Modify	
  DraE	
                                      Android	
  
                                                                                             	
  
TaaS	
  Server	
  
•    Specify	
  the	
  contract	
  
•    Implement	
  the	
  contract	
  
•    Return	
  the	
  results	
  
•    Run	
  TaaS	
  Server	
  (REST	
  service)	
  
•    Serve	
  TaaS	
  Client	
  requests	
  
      –  As	
  separate	
  processes	
  
The	
  contract	
  
Implement	
  the	
  contract	
  
•  Update	
  tests	
  to	
  -­‐	
  
     –  Handle	
  input	
  parameters	
  
          •  From	
  Environment	
  variables	
  
     –  Execute	
  the	
  “test”	
  
Return	
  the	
  results	
  
•  Output	
  parameters	
  
    –  As	
  console	
  output	
  between	
  special	
  markers	
  
•  Console	
  logs	
  
•  Excep?ons	
  (if	
  any)	
  
•  All	
  return	
  values	
  are	
  in	
  “json”	
  format	
  
Run	
  TaaS	
  Server	
  
•  Dedicated	
  machine	
  
•  Provide	
  IP	
  address	
  /	
  host	
  name	
  +	
  port	
  to	
  
   poten?al	
  clients	
  
TaaS	
  Client	
  
•    Collect	
  the	
  input	
  parameters	
  
•    Invoke	
  the	
  contract	
  
•    Consume	
  the	
  result	
  
•    Con?nue	
  with	
  test	
  orchestra?on	
  
Some	
  code	
  snippets	
  
               	
  
from	
  Cucumber	
  /	
  Ruby	
  world	
  
Specify	
  the	
  Contract	
  
Specify	
  the	
  Contract	
  
Implement	
  the	
  Contract	
  
Parse	
  Input	
  parameters	
  
Return	
  Output	
  parameter	
  values	
  
Invoke	
  TaaS	
  Contract	
  
Other	
  features	
  
•    Timeout	
  
•    Console	
  logs	
  and	
  errors	
  
•    Developed	
  in	
  Ruby	
  using	
  Sinatra	
  
•    Available	
  on	
  github!	
  
Does	
  it	
  really	
  work?	
  
Another	
  analogy	
  
•    Error	
  codes	
  for	
  the	
  service	
  
•    Service	
  Discovery	
  
•    Security	
  
•    Publish	
  as	
  a	
  gem	
  
Why	
  is	
  this	
  a	
  good	
  idea?	
  
•  No	
  code	
  duplica?on	
  
•  Implementa?on	
  of	
  contract	
  lies	
  with	
  the	
  
   framework	
  tes?ng	
  that	
  product	
  
    –  Evolves	
  with	
  product	
  changes	
  
•  Each	
  product	
  is	
  tested	
  in	
  the	
  “best”	
  possible	
  
   way	
  
•  Decoupling	
  of	
  technologies	
  
•  Its	
  –	
  providing	
  Test	
  as	
  a	
  Service!!!	
  
Anand.Bagmar@thoughtworks.com	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Abagmar@gmail.com	
  

	
  

         	
        	
  @BagmarAnand	
  



                     hcp://essenceo#es?ng.blogspot.com	
  

hcps://github.com/anandbagmar/taas	
  

                                      hcp://in.linkedin.com/in/anandbagmar/	
  

Weitere ähnliche Inhalte

Andere mochten auch

CIBER QA & Testing Practice
CIBER QA & Testing PracticeCIBER QA & Testing Practice
CIBER QA & Testing Practiceguest305bc8
 
What is (tcoe) testing center of excellence
What is (tcoe) testing center of excellenceWhat is (tcoe) testing center of excellence
What is (tcoe) testing center of excellenceMaveric Systems
 
Testing Practice: Lera Technologies
Testing Practice: Lera TechnologiesTesting Practice: Lera Technologies
Testing Practice: Lera TechnologiesLera Technologies
 
V model presentation
V model presentationV model presentation
V model presentationNiat Murad
 
Testing capability ppt
Testing capability pptTesting capability ppt
Testing capability pptanilreddyqa
 
About Indium Software - Software Testing Service Offering
About Indium Software - Software Testing Service Offering About Indium Software - Software Testing Service Offering
About Indium Software - Software Testing Service Offering Indium Software
 
Managed Test Services - Maveric Systems
Managed Test Services - Maveric SystemsManaged Test Services - Maveric Systems
Managed Test Services - Maveric SystemsMaveric Systems
 
Testing as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsTesting as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsProlifics
 

Andere mochten auch (10)

CIBER QA & Testing Practice
CIBER QA & Testing PracticeCIBER QA & Testing Practice
CIBER QA & Testing Practice
 
TCoE
TCoETCoE
TCoE
 
What is (tcoe) testing center of excellence
What is (tcoe) testing center of excellenceWhat is (tcoe) testing center of excellence
What is (tcoe) testing center of excellence
 
Testing Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabsTesting Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabs
 
Testing Practice: Lera Technologies
Testing Practice: Lera TechnologiesTesting Practice: Lera Technologies
Testing Practice: Lera Technologies
 
V model presentation
V model presentationV model presentation
V model presentation
 
Testing capability ppt
Testing capability pptTesting capability ppt
Testing capability ppt
 
About Indium Software - Software Testing Service Offering
About Indium Software - Software Testing Service Offering About Indium Software - Software Testing Service Offering
About Indium Software - Software Testing Service Offering
 
Managed Test Services - Maveric Systems
Managed Test Services - Maveric SystemsManaged Test Services - Maveric Systems
Managed Test Services - Maveric Systems
 
Testing as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsTesting as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIs
 

Ähnlich wie Integration testing in enterprises using TaaS (Test as a Service)

Automate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaSAutomate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaSThoughtworks
 
Automate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaSAutomate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaSAnand Bagmar
 
Integration testing in enterprises using TaaS
Integration testing in enterprises using TaaS Integration testing in enterprises using TaaS
Integration testing in enterprises using TaaS Anand Bagmar
 
San Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker PresentationSan Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker PresentationClever Moe
 
Agile2013 - Integration testing in enterprises using TaaS - via Case Study
Agile2013 - Integration testing in enterprises using TaaS - via Case StudyAgile2013 - Integration testing in enterprises using TaaS - via Case Study
Agile2013 - Integration testing in enterprises using TaaS - via Case StudyAnand Bagmar
 
Sr_Lead_QA_April_2016
Sr_Lead_QA_April_2016Sr_Lead_QA_April_2016
Sr_Lead_QA_April_2016Nick Yefimov
 
Integration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaSIntegration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaSAnand Bagmar
 
Jdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsJdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsMert Çalışkan
 
Provisioning, deploying and debugging node.js applications on azure
Provisioning, deploying and debugging node.js applications on azureProvisioning, deploying and debugging node.js applications on azure
Provisioning, deploying and debugging node.js applications on azurePatriek van Dorp
 
Leveraging Azure for Performance Testing
Leveraging Azure for Performance TestingLeveraging Azure for Performance Testing
Leveraging Azure for Performance TestingTarun Arora
 
Web Test Automation Framework - IndicThreads Conference
Web Test Automation Framework  - IndicThreads ConferenceWeb Test Automation Framework  - IndicThreads Conference
Web Test Automation Framework - IndicThreads ConferenceIndicThreads
 
Novell ZENworks Application Virtualization Advanced Administration
Novell ZENworks Application Virtualization Advanced AdministrationNovell ZENworks Application Virtualization Advanced Administration
Novell ZENworks Application Virtualization Advanced AdministrationNovell
 
SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)Ayman El-Hattab
 
Cross-project defect prediction
Cross-project defect predictionCross-project defect prediction
Cross-project defect predictionThomas Zimmermann
 
MongoDB on Windows Azure
MongoDB on Windows AzureMongoDB on Windows Azure
MongoDB on Windows AzureMongoDB
 
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusD. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusUni Systems S.M.S.A.
 
DevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse ConferenceDevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse ConferenceRosalind Radcliffe
 
Performance testslideshowrecent
Performance testslideshowrecentPerformance testslideshowrecent
Performance testslideshowrecentFuture Simmons
 
Java Attacks & Defenses - End of Year 2010 Presentation
Java Attacks & Defenses - End of Year 2010 PresentationJava Attacks & Defenses - End of Year 2010 Presentation
Java Attacks & Defenses - End of Year 2010 PresentationJames Hamilton
 
Optimising Productivity with AWS Developer Tools
Optimising Productivity with AWS Developer ToolsOptimising Productivity with AWS Developer Tools
Optimising Productivity with AWS Developer ToolsAmazon Web Services
 

Ähnlich wie Integration testing in enterprises using TaaS (Test as a Service) (20)

Automate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaSAutomate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaS
 
Automate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaSAutomate across Platform, OS, Technologies with TaaS
Automate across Platform, OS, Technologies with TaaS
 
Integration testing in enterprises using TaaS
Integration testing in enterprises using TaaS Integration testing in enterprises using TaaS
Integration testing in enterprises using TaaS
 
San Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker PresentationSan Jose Selenium Meet-up PushToTest TestMaker Presentation
San Jose Selenium Meet-up PushToTest TestMaker Presentation
 
Agile2013 - Integration testing in enterprises using TaaS - via Case Study
Agile2013 - Integration testing in enterprises using TaaS - via Case StudyAgile2013 - Integration testing in enterprises using TaaS - via Case Study
Agile2013 - Integration testing in enterprises using TaaS - via Case Study
 
Sr_Lead_QA_April_2016
Sr_Lead_QA_April_2016Sr_Lead_QA_April_2016
Sr_Lead_QA_April_2016
 
Integration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaSIntegration Testing in Enterprises using TaaS
Integration Testing in Enterprises using TaaS
 
Jdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsJdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent Projects
 
Provisioning, deploying and debugging node.js applications on azure
Provisioning, deploying and debugging node.js applications on azureProvisioning, deploying and debugging node.js applications on azure
Provisioning, deploying and debugging node.js applications on azure
 
Leveraging Azure for Performance Testing
Leveraging Azure for Performance TestingLeveraging Azure for Performance Testing
Leveraging Azure for Performance Testing
 
Web Test Automation Framework - IndicThreads Conference
Web Test Automation Framework  - IndicThreads ConferenceWeb Test Automation Framework  - IndicThreads Conference
Web Test Automation Framework - IndicThreads Conference
 
Novell ZENworks Application Virtualization Advanced Administration
Novell ZENworks Application Virtualization Advanced AdministrationNovell ZENworks Application Virtualization Advanced Administration
Novell ZENworks Application Virtualization Advanced Administration
 
SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)
 
Cross-project defect prediction
Cross-project defect predictionCross-project defect prediction
Cross-project defect prediction
 
MongoDB on Windows Azure
MongoDB on Windows AzureMongoDB on Windows Azure
MongoDB on Windows Azure
 
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusD. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
 
DevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse ConferenceDevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse Conference
 
Performance testslideshowrecent
Performance testslideshowrecentPerformance testslideshowrecent
Performance testslideshowrecent
 
Java Attacks & Defenses - End of Year 2010 Presentation
Java Attacks & Defenses - End of Year 2010 PresentationJava Attacks & Defenses - End of Year 2010 Presentation
Java Attacks & Defenses - End of Year 2010 Presentation
 
Optimising Productivity with AWS Developer Tools
Optimising Productivity with AWS Developer ToolsOptimising Productivity with AWS Developer Tools
Optimising Productivity with AWS Developer Tools
 

Mehr von Anand Bagmar

Eradicate Flaky Tests
Eradicate Flaky TestsEradicate Flaky Tests
Eradicate Flaky TestsAnand Bagmar
 
Automating the real-user scenarios across multi-apps, and multi-devices
Automating the real-user scenarios across multi-apps, and multi-devicesAutomating the real-user scenarios across multi-apps, and multi-devices
Automating the real-user scenarios across multi-apps, and multi-devicesAnand Bagmar
 
Visual Validation - The missing tip of the automation pyramid @GoT2022
Visual Validation - The missing tip of the automation pyramid @GoT2022Visual Validation - The missing tip of the automation pyramid @GoT2022
Visual Validation - The missing tip of the automation pyramid @GoT2022Anand Bagmar
 
Design Patterns in Automation
Design Patterns in AutomationDesign Patterns in Automation
Design Patterns in AutomationAnand Bagmar
 
Change Tyres In A Moving Car - Make Functional Test Automation Effective Keynote
Change Tyres In A Moving Car - Make Functional Test Automation Effective KeynoteChange Tyres In A Moving Car - Make Functional Test Automation Effective Keynote
Change Tyres In A Moving Car - Make Functional Test Automation Effective KeynoteAnand Bagmar
 
Rewrite vs Refactor (AgileIndia 2021)
Rewrite vs Refactor (AgileIndia 2021)Rewrite vs Refactor (AgileIndia 2021)
Rewrite vs Refactor (AgileIndia 2021)Anand Bagmar
 
Next Generation Functional & Visual Testing powered by AI
Next Generation Functional & Visual Testing powered by AINext Generation Functional & Visual Testing powered by AI
Next Generation Functional & Visual Testing powered by AIAnand Bagmar
 
The Best Test Automation Framework is...
The Best Test Automation Framework is...The Best Test Automation Framework is...
The Best Test Automation Framework is...Anand Bagmar
 
Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021Anand Bagmar
 
Getting started with Appium 2.0
Getting started with Appium 2.0Getting started with Appium 2.0
Getting started with Appium 2.0Anand Bagmar
 
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020Visual Validation - The missing tip of the automation pyramid @AgileIndia2020
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020Anand Bagmar
 
Selenium Deep Dive
Selenium Deep DiveSelenium Deep Dive
Selenium Deep DiveAnand Bagmar
 
Does your functional automation really add value?
Does your functional automation really add value?Does your functional automation really add value?
Does your functional automation really add value?Anand Bagmar
 
Measuring Coverage From E2E Tests
Measuring Coverage From E2E TestsMeasuring Coverage From E2E Tests
Measuring Coverage From E2E TestsAnand Bagmar
 
Getting started with Visual Testing using Applitools - @TPC, Feb2020
Getting started with Visual Testing using Applitools - @TPC, Feb2020Getting started with Visual Testing using Applitools - @TPC, Feb2020
Getting started with Visual Testing using Applitools - @TPC, Feb2020Anand Bagmar
 
Visual validation - The missing tip of the automation pyramid @ QA Symposium
Visual validation - The missing tip of the automation pyramid @ QA SymposiumVisual validation - The missing tip of the automation pyramid @ QA Symposium
Visual validation - The missing tip of the automation pyramid @ QA SymposiumAnand Bagmar
 
Collaboration - A Taboo!
Collaboration - A Taboo!Collaboration - A Taboo!
Collaboration - A Taboo!Anand Bagmar
 
Visual Validation - The Missing Tip of the Automation Pyramid
Visual Validation - The Missing Tip of the Automation PyramidVisual Validation - The Missing Tip of the Automation Pyramid
Visual Validation - The Missing Tip of the Automation PyramidAnand Bagmar
 
Measuring Consumer Quality - The Missing Feedback Loop
Measuring Consumer Quality - The Missing Feedback LoopMeasuring Consumer Quality - The Missing Feedback Loop
Measuring Consumer Quality - The Missing Feedback LoopAnand Bagmar
 
What is Agile Testing? How does Automation help?
What is Agile Testing? How does Automation help?What is Agile Testing? How does Automation help?
What is Agile Testing? How does Automation help?Anand Bagmar
 

Mehr von Anand Bagmar (20)

Eradicate Flaky Tests
Eradicate Flaky TestsEradicate Flaky Tests
Eradicate Flaky Tests
 
Automating the real-user scenarios across multi-apps, and multi-devices
Automating the real-user scenarios across multi-apps, and multi-devicesAutomating the real-user scenarios across multi-apps, and multi-devices
Automating the real-user scenarios across multi-apps, and multi-devices
 
Visual Validation - The missing tip of the automation pyramid @GoT2022
Visual Validation - The missing tip of the automation pyramid @GoT2022Visual Validation - The missing tip of the automation pyramid @GoT2022
Visual Validation - The missing tip of the automation pyramid @GoT2022
 
Design Patterns in Automation
Design Patterns in AutomationDesign Patterns in Automation
Design Patterns in Automation
 
Change Tyres In A Moving Car - Make Functional Test Automation Effective Keynote
Change Tyres In A Moving Car - Make Functional Test Automation Effective KeynoteChange Tyres In A Moving Car - Make Functional Test Automation Effective Keynote
Change Tyres In A Moving Car - Make Functional Test Automation Effective Keynote
 
Rewrite vs Refactor (AgileIndia 2021)
Rewrite vs Refactor (AgileIndia 2021)Rewrite vs Refactor (AgileIndia 2021)
Rewrite vs Refactor (AgileIndia 2021)
 
Next Generation Functional & Visual Testing powered by AI
Next Generation Functional & Visual Testing powered by AINext Generation Functional & Visual Testing powered by AI
Next Generation Functional & Visual Testing powered by AI
 
The Best Test Automation Framework is...
The Best Test Automation Framework is...The Best Test Automation Framework is...
The Best Test Automation Framework is...
 
Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021
 
Getting started with Appium 2.0
Getting started with Appium 2.0Getting started with Appium 2.0
Getting started with Appium 2.0
 
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020Visual Validation - The missing tip of the automation pyramid @AgileIndia2020
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020
 
Selenium Deep Dive
Selenium Deep DiveSelenium Deep Dive
Selenium Deep Dive
 
Does your functional automation really add value?
Does your functional automation really add value?Does your functional automation really add value?
Does your functional automation really add value?
 
Measuring Coverage From E2E Tests
Measuring Coverage From E2E TestsMeasuring Coverage From E2E Tests
Measuring Coverage From E2E Tests
 
Getting started with Visual Testing using Applitools - @TPC, Feb2020
Getting started with Visual Testing using Applitools - @TPC, Feb2020Getting started with Visual Testing using Applitools - @TPC, Feb2020
Getting started with Visual Testing using Applitools - @TPC, Feb2020
 
Visual validation - The missing tip of the automation pyramid @ QA Symposium
Visual validation - The missing tip of the automation pyramid @ QA SymposiumVisual validation - The missing tip of the automation pyramid @ QA Symposium
Visual validation - The missing tip of the automation pyramid @ QA Symposium
 
Collaboration - A Taboo!
Collaboration - A Taboo!Collaboration - A Taboo!
Collaboration - A Taboo!
 
Visual Validation - The Missing Tip of the Automation Pyramid
Visual Validation - The Missing Tip of the Automation PyramidVisual Validation - The Missing Tip of the Automation Pyramid
Visual Validation - The Missing Tip of the Automation Pyramid
 
Measuring Consumer Quality - The Missing Feedback Loop
Measuring Consumer Quality - The Missing Feedback LoopMeasuring Consumer Quality - The Missing Feedback Loop
Measuring Consumer Quality - The Missing Feedback Loop
 
What is Agile Testing? How does Automation help?
What is Agile Testing? How does Automation help?What is Agile Testing? How does Automation help?
What is Agile Testing? How does Automation help?
 

Integration testing in enterprises using TaaS (Test as a Service)

  • 1. Integra(on  tes(ng  in   Enterprises  using  TaaS   Anand  Bagmar   So#ware  Quality  Evangelist   Principal  Consultant,  ThoughtWorks  
  • 2.
  • 3.
  • 5. Business  spread  across  the  globe  
  • 7. Is  Test  Automa?on  treated  as  1st  class  ci?zen  in   your  organiza?on?   •  Value   •  Quality  
  • 8. Quick  survey   •  Part  of  a  large  organiza?on?   •  #  of  products  in  the  porLolio?   •  #  of  projects  across  all  these  products?   •  Technology  stack  of  these  products?   •  Part  of  merged  /  acquired  companies?     –  Same  technology  of  “new”  products?   •  Distributed  teams?   •  Common  Test  Automa?on  framework?  
  • 9.
  • 11. Outlook  Web   Outlook  Sync   Access  (OWA)   (Android)   (Browser)   Outlook  (Mac)   …   Outlook   (Windows)   Outlook   …  
  • 12. How  will  you  automate  these?  
  • 13. The  solu?on   Outlook  for   Outlook  for   Outlook  Web   Outlook  Sync   Windows   Mac   Access   for  Android   •  White  /  QTP   •  Automator   (OWA)   •  Robo?um  /   •  Selenium  /   Java   Ruby  
  • 14. For  a  user  who  has  installed  Outlook  on   –  Windows  OS  –  desktop  version,  and,   –  Mac  OS  –  desktop  version   –  Android  device  –  na?ve  mobile  app     How  will  you  test  ….     An  email  dra7ed  in  one  product  is  reflected  in   the  other  products    
  • 15. Can  you  use  the  same  technology   stack  for  tes(ng  each  variant  of   Outlook?  
  • 16. On  Windows   •  Create  an  email  and  save  it  as  dra#   In  Browser  (OWA)   •  Verify  dra#  email  is  seen   On  Mac   •  Verify  dra#  email  is  seen   On  Android   •  Verify  dra#  email  is  seen   …  
  • 17. …   In  OWA   •  Change  the  dra#  email  content   On  Windows   •  Verify  updated  email  content  is  seen   On  Mac   •  Verify  updated  email  content  is  seen   On  Android   •  Verify  updated  email  content  is  seen  
  • 18. The  problem   Outlook  for   Outlook  for   Outlook  Web   Outlook  Sync   Windows   Mac   Access   for  Android   •  White  /  QTP   •  Automator   (OWA)   •  Robo?um  /   •  Selenium  /   Java   Ruby  
  • 20. Create  &  Save   (Test   as  DraE   Framework   for)     1   Outlook  on   Windows     4   Verify  DraE   End-­‐2-­‐End   Integra-on   Test   Verify  DraE     2   present   (Test   Framework   for)   3   Outlook   Orchestrator   Sync  on   Modify  DraE   Android    
  • 21. Create  &  Save   Test   as  DraE   Framework   TaaS   for     1   Server   Outlook  on   Windows     4   Verify  DraE   End-­‐2-­‐End   Integra-on   TaaS   Service  Providers   Test   Client   Framework   Verify  DraE     2   present   Test   Framework   3   TaaS   for  Outlook   Orchestrator   Server   Sync  on   Modify  DraE   Android    
  • 22.
  • 23. TaaS  Server   •  Specify  the  contract   •  Implement  the  contract   •  Return  the  results   •  Run  TaaS  Server  (REST  service)   •  Serve  TaaS  Client  requests   –  As  separate  processes  
  • 25. Implement  the  contract   •  Update  tests  to  -­‐   –  Handle  input  parameters   •  From  Environment  variables   –  Execute  the  “test”  
  • 26. Return  the  results   •  Output  parameters   –  As  console  output  between  special  markers   •  Console  logs   •  Excep?ons  (if  any)   •  All  return  values  are  in  “json”  format  
  • 27. Run  TaaS  Server   •  Dedicated  machine   •  Provide  IP  address  /  host  name  +  port  to   poten?al  clients  
  • 28. TaaS  Client   •  Collect  the  input  parameters   •  Invoke  the  contract   •  Consume  the  result   •  Con?nue  with  test  orchestra?on  
  • 29. Some  code  snippets     from  Cucumber  /  Ruby  world  
  • 36. Other  features   •  Timeout   •  Console  logs  and  errors   •  Developed  in  Ruby  using  Sinatra   •  Available  on  github!  
  • 37. Does  it  really  work?  
  • 39. •  Error  codes  for  the  service   •  Service  Discovery   •  Security   •  Publish  as  a  gem  
  • 40. Why  is  this  a  good  idea?   •  No  code  duplica?on   •  Implementa?on  of  contract  lies  with  the   framework  tes?ng  that  product   –  Evolves  with  product  changes   •  Each  product  is  tested  in  the  “best”  possible   way   •  Decoupling  of  technologies   •  Its  –  providing  Test  as  a  Service!!!  
  • 41. Anand.Bagmar@thoughtworks.com                        Abagmar@gmail.com        @BagmarAnand   hcp://essenceo#es?ng.blogspot.com   hcps://github.com/anandbagmar/taas   hcp://in.linkedin.com/in/anandbagmar/