Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Software Testing Metamorphosis

The Software Testing Metamorphosis

The shift towards combined engineering and the new software development premise.

Avatar for Andres de Vivanco

Andres de Vivanco

May 31, 2016

More Decks by Andres de Vivanco

Other Decks in Technology

Transcript

  1.   La  Salle  University   Arequipa,  Perú  -­‐    May

     2016   #TourAgilePeru2016     Sponsored  by:  
  2. Test  that  you’re   developing     ”The  right  product”

      You’re  sure  about  what   product  you’ll  develop.      You  start  paying   a4en5on  to  test   automa5on   AutomaJon  is   required  to  build   the   ”the  right  product”   in    
  3. How  it’s  mutaJng  and  how  to  be  ready  for  

    its  imminent  radical  change…….  
  4. Nowadays  a  good  So:ware  Test  Engineer  must   be  ready

     for  the  shi>t  and  be  a  coder.       •  They  must  know  about  transaccional  logic;  inputs,  outputs,   code  reviewing,  debugging,  soRware  architecture,  coding   paSerns,  data  stores,  and  reverse  engineering     •  The  few  who  know  these  skills  will  persevere  over  those  who   don’t  and  eventually  become  combined  engineers  or  expert   testers   •  The  QA  /  SoRware  Tester  Automator  role  is  merging  into   combined  engineering    and  the  tradiJonal  QA  roles  both   manual  as  automator  are  dying        
  5. Ziffel:      Tool  to  test  Restricted  Natural  Language  Translator

     (RNL)  to  SQL   such  as  “show  me  my  email”  or  “do  I  have  a  meeJng  at  2pm”.      Used  BNF   model  based  tesJng.      Able  to  generate  thousands  of  test  cases  an  hour   and  found  a  priority  1  bug  in  the  module  one  week  before  it’s  release.   MIMEA4ack:      Security  tesJng  tool  that  generates  random  MIME  packets   based  on  MIME  protocol  but  switching  the  content  of  mulJparted   messages,  injecJng  long  buffers,  changing  content-­‐types.    Found  about  five   “packets  of  death”  in  Exchange  2003  before  its  release  (without  need  for   authenJcaJon)  that  brought  the  server  down  for  at  least  5  minutes   (Windows  process)   Heat:    Tool  to  test  applicaJons  under  extreme  condiJons  such  as  full   disks,  low  memory,  bad  network,  and  similar  to  validate  if  applicaJons  fail   gracefully.    It  works  by  API  hooking,    in  x86  assembly  language,  the   Windows  OS  between  user  and  kernel  mode  and  injecJng  faults  on   demand.    Found  many  bugs  like  data-­‐loss  in  important  products.  
  6. Parallel  to  Combined  Engineering,  QA  and  So:ware   Tes5ng  is

     also  muta5ng  to     finding  people  who  know  how  to  make  the  “right   product”     based  on  feedback  interpreta5on,  A/B  tes5ng,  and   customer  sa5sfac5on  collec5on  and  analysis.    They   don’t  have  to  be  a  coders  for  this  but  must  have  a   natural  talent  that’s  difficult  to  find  
  7. Don’t  develop  soRware  thinking  about  your   but  instead  about

     the  reciprocity  of  and  an  advanced   society  where  people   Instead   develop  soRware  for  your  client’s  saJsfacJon….  end  users   must  be  your  friends:  TAKE  GREED  OUT  OF  THE   EQUATION!!       For  the  prosperity  of  future  generaJons  it’s  necesary  to   create  this  kind  of  reciprocity  system;  even  though  it’s  not   only  about  soRware,  technology  will  play  a  big  part  in   making  the  new  earth.    This  is  not  uthopic  thinking:  it’s   extreme  thinking  and  necessary  for  real  progress.