Automate across Platform, OS, Technologies with TaaS

50 %
50 %
Information about Automate across Platform, OS, Technologies with TaaS
Technology

Published on March 3, 2014

Author: abagmar

Source: slideshare.net

Description

Slides and link to audio from my talk + demo on how to "Automation across Platform, OS, Technologies with TaaS" at Agile India 2014, Bangalore on 1st March 2014

Automate  across   Pla.orm,  OS,   Technologies  with  TaaS   Anand  Bagmar   So#ware  Quality  Evangelist          Principal  Consultant,   @BagmarAnand  

Organiza@on  Objec@ve   Money  /   Value   Time   Quality  

Reality  –  Organiza@ons     are  spread  across  the  World  

What  is  a  prac@ce  that  makes  Teams   successful?   Test  Automa=on  

What  is  a  prac@ce  that  makes  Teams   unsuccessful?   Test  Automa=on  

Where  is  Test  Automa@on  placed   in  the  Food  Chain  of  SDLC?   Is  Test  Automa@on  treated  as  1st  class  ci@zen  in  your   organiza@on?   •  Value   –  To  the  team?   –  From  the  team?   •  Quality   –  Provide  feedback?   –  Built  well?  

Principles  &  Prac@ces     for  Building  a   Test  Automa@on  Framework  

Code  Quality   Evolve   Extend   Design  PaDerns   Principles  for  building   an  Automa=on   Framework   Pairing   Refactor   Abstrac=on   Layers  

No  Copy-­‐Paste   Con=nuous   Integra=on  (CI)   Screenshots,   Video   Recording   Configurable   Prac=ces  for  building   an  Automa=on   Framework   Logging   Tools  &   U=li=es   Test  Data  

Audience  Survey   How  many  of  you  are  part  of  a  large   organiza@on?  

Audience  Survey   …  large  organiza,on?   What  are  the  average  number  of  products  in   your  organiza@on’s  porVolio?  

Audience  Survey   …  large  organiza,on?   …  number  of  products?   What  are  the  average  number  of  projects  across   all  these  products?  

Audience  Survey   …  large  organiza,on?   …  number  of  products  and  projects?   What  is  the  typical  technology  stack  of  these   products?  

Audience  Survey   …  large  organiza,on?   …  number  of  products  and  projects?   …  same  technology  stack?   How  many  of  you  are  part  of  merged  /  acquired   companies?   Do  you  have  the  same  technology  across  the   “new”  products?  

Audience  Survey   …  large  organiza,on?   …  number  of  products  and  projects?   …  same  technology  stack?   …  merged  companies  –  same  technology  stack?   How  many  of  you  work  in  distributed  teams?  

Audience  Survey   …  large  organiza,on?   …  number  of  products  and  projects?   …  same  technology  stack?   …  merged  companies  –  same  technology  stack?   …  distributed  teams?   Have  you  heard  of  a     Common  Test  Automa@on  framework?     Good?  Bad?     Easy?  Difficult?  

Case  Study  

Outlook   (Mac)   Outlook   (Windows)   Outlook  Web   Access  (OWA)   (Browser)   Outlook   Outlook   Sync   (Android)   …  

How  will  you  Automate  the  Tes@ng   for  Outlook?  

Outlook  for   Windows   Outlook  for   Mac   •  White  /  QTP   •  Automator   Outlook  Web   Access   (OWA)   •  Selenium  /   Ruby   Outlook  Sync   for  Android   •  Robo@um  /   Java  

How  will  you  Automate  the     Integra@on  Test  ….   For  a  user  who  has  installed  and  configured   Outlook  on   –  Windows  OS  –  desktop  version,  and,   –  Android  device  –  na@ve  mobile  app   –  …   An  email  draTed  in  one  product  is  reflected  in   the  other  products    

Create  &  Save   as  DraE   1   4   End-­‐2-­‐End   Integra-on   Tests   2   Verify  DraE   Verify  DraE     present   3   Orchestrator   Modify  DraE   (Test   Framework   for)     Outlook  on   Windows     (Test   Framework   for)   Outlook   Sync  on   Android    

The  Problem   Can  you  use  the  same  technology   stack  for  automa=ng  the  tes=ng   of  each  variant  of  Outlook?  

Outlook  for   Windows   Outlook  for   Mac   •  White  /  QTP   •  Automator   Outlook  Web   Access   (OWA)   •  Selenium  /   Ruby   Outlook  Sync   for  Android   •  Robo@um  /   Java  

My  Original  Problem  

The  Solu=on  

What  is  TaaS?   “TaaS”  is  a  product  that  allows  you  to  validate  the  integra-on  across  a   variety  of  products  via  Test  Automa-on   •  The  “correct”  way   •  Pla.orm  /  OS  agnos=c   •  Implementa=on  Language  Independent  

What  is  TaaS?   Agnos-c   PlaVorm  /  OS   Implementa@on  Language  

What  is  TaaS?   Contract   Decoupling  of  technology  barriers   Timeout  

What  is  TaaS?   Simple  Parameters   Input  &  Output  

What  is  TaaS?   Developed  in  Ruby  using  Sinatra  

TaaS  is  Not  a  …   “Tool”  for  integra@on  different  products   -­‐  Lack  of  Security   -­‐  Probably  not  as  robust  

TaaS  is  Not  a  …   Load  Tes@ng  Tool  

How  does  TaaS  work?  

Create  &  Save   as  DraE   1   End-­‐2-­‐End   Integra-on   TaaS   Tests   Client   Framework   Orchestrator   4   Verify  DraE   Test   Framework   TaaS   for     Server   Outlook  on   Windows     Service  Providers   2   Verify  DraE     present   3   Modify  DraE   Test   Framework   TaaS   for  Outlook   Server   Sync  on   Android    

Demo   How  to  use  TaaS?   TaaS  Server  -­‐>  Ruby  project   TaaS  Service  provider  -­‐>  Cucumber-­‐jvm  Project   (Java)   Client  –  command  line  invoca@on  

TaaS  Server  Implementa@on  

What  is  a  Contract?   Specified  in  a  simple  yml  file  

Contract  Defini@on  

Contract  Defini@on  

Implement  the  Contract   •  Update  tests  to  -­‐   –  Handle  input  parameters   •  From  Environment  variables   –  Execute  the  “test”  

Implement  the  Contract  

Parse  Input  Parameters  

Return  the  Results   •  Output  parameters   –  As  console  output  between  special  markers   •  Console  logs   •  Excep@ons  (if  any)   •  All  return  values  are  in  “json”  format  

Collect  Output  Parameter  Values  

Return  Output  Parameter  Values  

Run  TaaS  Server   •  Dedicated  machine   •  Provide  IP  address  /  host  name  +  port  to   poten@al  clients  

TaaS  Client  Implementa@on  

Setup  TaaS  Client  

Invoke  TaaS  Contract  

TaaS  Technical  Summary  

TaaS  Server   •  •  •  •  •  Specify  contract  details   Implement  contracts   Return  the  results   Run  TaaS  Server  (REST  service)   Serve  TaaS  Client  requests   –  As  separate  processes  

TaaS  Client   •  •  •  •  Collect  the  input  parameters   Invoke  the  contract   Consume  the  result   Con@nue  with  test  orchestra@on  

Summary  of  Features   •  Contract   –  Decoupling  of  technology  barriers   –  Timeout   •  Passing  of  input  parameters  as  Environment   variables   •  Result  as  json   –  Output  parameters   –  Console  logs  and  errors   –  Excep@ons   •  Developed  in  Ruby  using  Sinatra  

Why  is  this  a  Good  Idea?   •  Automate  the  last-­‐mile   •  No  code  duplica@on   •  Implementa@on  of  contract  lies  with  the   framework  tes@ng  that  product   –  Evolves  with  product  changes   •  Decoupling  of  technologies  

Why  is  this  a  Good  Idea?   •  Helps  in  Manual  Tes@ng  (setup  of  data)   •  Anyone  can  use  it   •  Each  product  is  tested  in  the  “best”  possible   way    

How  can  you  use  TaaS?   •  •  •  •  Open  source  (apache2  license)   Available  on  github!     Available  on  rubygems.org  !   Refer  sample  project  (taas-­‐server)  to  get   started  

Steps  to  Follow   •  Nego@ate  contract  details   •  Setup  &  configure  TaaS  Server   –  Implement  contracts   –  Return  the  results   –  Run  TaaS  Server  (REST  service)   •  Configure  TaaS  Client  

Does  it  really  work?   >1.2K  downloads  

Before  you  use  TaaS  …   Iden@fy  –     •  Is  TaaS  the  right  thing  for  you?  

How  can  You  help  TaaS?   •  •  •  •  •  Error  codes  for  the  service   Service  Discovery   Security   Create  a  Java  /  .Net  version  of  TaaS  Server   Asynchronous  requests  

What  TaaS  did  for  me?   •  Be  crea@ve   •  Find  Innova@ve  solu@on  to  the  problem   •  Another  open  source  contribu@on  

Thank  you   abagmar@gmail.com                @BagmarAnand     about.me/anand.bagmar  

Add a comment

Related presentations

Related pages

Automate Across Platform, OS, Technologies with TaaS - YouTube

Automate Across Platform, OS, Technologies with TaaS. Automate Across Platform, ... Automate Across Platform, OS, Technologies with TaaS Khov Ea ...
Read more

Automate across Platform, OS, Technologies with TaaS ...

Hi Sherwin, Thank you for your kind words about TaaS! Here is what you would need to do to use Taas: Since TaaS is an integration enabler, and uses the ...
Read more

Automate across Platform, OS, Technologies with TaaS - YouTube

"TaaS" is an open-source product that allows you do achieve the "correct" way of doing integration testing across a variety of products via Test ...
Read more

Taas | LinkedIn

Taas on se aika vuodesta kun hiotaan budjettia ja toimintasuunnitelmaa. ... Automate across Platform, OS, Technologies with TaaS. 766 Views. ganeshn9.
Read more

Federal Secure Cloud Testing as a Service - TaaS Center of ...

Federal Secure Cloud Testing as a Service ... Technologies Increase Rate of ... The only way to keep up is to automate
Read more

Integrated TaaS platform for mobile development

Integrated TaaS platform for mobile development: ... (TaaS) solutions in mobile development and proposes a ... "Android Has 56.1% Of Global OS Market ...
Read more

Automate Your Tests across Platform, OS, Technologies with ...

Each product should be tested using the tools and technologies that ... Many organizations like to have a common Test Automation solution across these ...
Read more

Google

Advertising Programmes Business Solutions +Google About Google Google.com © 2016 - Privacy - Terms. Search; Images; Maps; Play; YouTube; News; Gmail ...
Read more