SlideShare a Scribd company logo
Advanced	
  Topics	
  in	
  Agile	
  Tes0ng	
  
Agile	
  Tes0ng	
  Days	
  2013	
  
Lisa	
  Crispin	
  
Co-­‐Author	
  with	
  Janet	
  Gregory,	
  Agile	
  Tes)ng:	
  A	
  Prac)cal	
  
Guide	
  for	
  Testers	
  and	
  Agile	
  Teams,	
  and	
  the	
  upcoming	
  More	
  
Agile	
  Tes)ng	
  	
  
The	
  day…	
  Maybe!	
  

	
  
	
  
	
  
	
  

1. 
2. 
3. 
4. 

Introduc0ons	
  
What	
  do	
  we	
  want	
  to	
  talk	
  about	
  
Priori0ze	
  
Then	
  start	
  tackling	
  one	
  problem	
  at	
  a	
  0me.	
  

	
  

2
Expecta0ons	
  
•  Collabora0ve,	
  	
  problem	
  solving	
  aPtude,	
  
open	
  
•  Workshop	
  –	
  We’ll	
  share	
  outcomes	
  with	
  the	
  
world	
  (keep	
  me	
  honest)	
  
•  Some	
  slides	
  –	
  if	
  we	
  need	
  them	
  for	
  
explana0on	
  
•  You’ll	
  leave	
  with	
  some	
  experiments	
  to	
  help	
  
with	
  your	
  biggest	
  problems	
  and	
  goals	
  
	
  
	
  
	
  
	
  

3
What	
  might	
  we	
  talk	
  about?	
  It’s	
  up	
  to	
  you!	
  
Possible	
  topics:	
  
• 
• 
• 
• 
• 
• 

	
  
	
  
	
  

Impact	
  mapping	
  
Agile	
  tes0ng	
  quadrants	
  
T-­‐shaped	
  Skillsets	
  
Mind	
  mapping	
  
Selec0ng	
  tools	
  
Technical	
  debt	
  

• 
• 
• 
• 
• 
• 

	
  
	
  
	
  

Distributed	
  teams	
  
Out-­‐sourcing	
  
Automa0on	
  
Pairing	
  pa[erns	
  
Experimen0ng	
  
Others????	
  	
  

4
Next:	
  	
  
	
  
•  Iden0fy	
  problems,	
  set	
  SMART	
  goals	
  
•  Brainstorm	
  experiments	
  to	
  achieve	
  goals	
  and	
  
reduce	
  problem	
  size	
  
–  Impact	
  mapping	
  
–  Other	
  discussion	
  and	
  brainstorming	
  exercises	
  such	
  as	
  
mind	
  mapping,	
  drawing	
  on	
  the	
  whiteboard,	
  brain	
  
wri0ng,	
  SWOT	
  analysis	
  
–  We’ll	
  share	
  stories	
  and	
  experiences	
  

	
  
In	
  table	
  groups:	
  
1.  Write	
  down	
  biggest	
  
tes0ng-­‐related	
  
problems	
  for	
  your	
  own	
  
team,	
  one	
  per	
  s0cky	
  
note	
  
2.  Dot	
  vote	
  to	
  priori0ze	
  
3.  Set	
  SMART	
  goal	
  for	
  
highest	
  priority	
  
problem	
  
Impact	
  Mapping	
  
• 
• 
• 
• 

Why	
  are	
  we	
  doing	
  this?	
  
Who	
  can	
  help?	
  Hinder?	
  Who	
  is	
  impacted?	
  
How	
  can	
  they	
  help	
  or	
  hinder?	
  Impacts	
  
What	
  can	
  we	
  do	
  to	
  support	
  impacts?	
  
	
  	
  	
  	
  	
  	
  Deliverables	
  

7	
  
Example	
  Impact	
  Map	
  	
  

Based	
  on	
  example	
  at	
  h[p://impactmapping.org,	
  Gojko	
  Adzic	
  
Recommended	
  book:	
  Impact	
  Mapping	
  
8	
  
Impact	
  	
  
Map	
  

Stakeholders	
  /	
  
personas	
  

Impacts	
  

Possible	
  deliverables	
  

Possible	
  deliverables	
  

9	
  
More	
  Resources	
  

	
  
	
  
	
  
	
  

The	
  following	
  slides	
  may	
  be	
  helpful	
  for	
  topics	
  
we	
  discuss,	
  or	
  for	
  future	
  reference.	
  
We’ll	
  write	
  down	
  resources,	
  and	
  there’s	
  a	
  
separate	
  list	
  of	
  useful	
  links	
  

	
  

10
Agile	
  Tes0ng	
  Quadrants	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  

11
ATDD	
  (Acceptance	
  Test	
  Driven	
  Development)	
  
Explore	
  
examples	
  

User	
  
Story	
  
Accept	
  
Story	
  

High	
  
level	
  
AT	
  
Fix	
  
defects	
  

Explore	
  

Expand	
  
Tests	
  

	
  
Exploratory	
  
Tes0ng	
  

Code	
  
&	
  
Execute	
  
tests	
  

Auto-­‐	
  
mate	
  
tests	
  
12	
  
Mind	
  Mapping	
  as	
  a	
  Tool	
  
rules	
  
Sub	
  topic	
  

user	
  name	
  

save	
  

first	
  3me	
  
Sub	
  topic	
  

rules	
  
password	
  
Sub	
  topic	
  
encryp3on	
  

MAIN	
  
new	
  account	
  
TOPIC	
  

Sub	
  topic	
  
change	
  
Sub	
  topic	
  

13	
  
Choosing	
  Tools	
  
§ 
§ 
§ 
§ 
§ 

	
  
	
  
	
  
	
  

Team	
  effort	
  
Time	
  
Requirements	
  
Focus	
  on	
  goals,	
  problems,	
  not	
  tools.	
  
Experiment	
  

	
  
14
•  Enables	
  testers	
  /	
  
business	
  to	
  define	
  tests	
  
•  test	
  code	
  can	
  be	
  in	
  
programming	
  language	
  
•  Programmers	
  can	
  run	
  
tests	
  as	
  they	
  code	
  
•  Testers	
  can	
  ask	
  
programmers	
  for	
  help	
  
•  Takes	
  0me	
  from	
  
‘coding’	
  produc0on	
  
code	
  

•  Tests	
  are	
  usually	
  
through	
  the	
  UI	
  
•  Programmers	
  aren’t	
  
usually	
  willing	
  to	
  help	
  
•  Tests	
  are	
  implemented	
  
amer	
  the	
  code	
  is	
  wri[en	
  
•  Testers	
  create	
  and	
  
implement	
  all	
  tests	
  

15	
  
Understand	
  the	
  Purpose	
  
§ 
§ 
§ 
§ 

	
  
	
  
	
  
	
  

Who’s	
  using	
  the	
  tests?	
  What	
  for?	
  
What’s	
  being	
  automated?	
  
Exis0ng	
  tools,	
  environment	
  
Who’s	
  doing	
  what	
  for	
  automa0ng?	
  

	
  

16
What	
  Fits	
  Your	
  Situa0on	
  
•  Exis0ng	
  skills	
  	
  
•  Language	
  of	
  applica0on	
  under	
  test	
  
•  Collabora0on	
  needs	
  
•  What’s	
  being	
  automated	
  
•  Life	
  span,	
  future	
  use	
  of	
  tests	
  
	
  
	
  
	
  
	
  
	
  

	
  
17
√	
  
Pairing	
  for	
  Tes3ng	
  
TesterDesigner
TesterMarketer
TesterSupport

Tester-Tester

Tester-Coder
Analyst, DBA,
Sys Admin,
Customer…
19	
  
The	
  key	
  is	
  “sustainable	
  pace”	
  
Technical	
  debt	
  slows	
  us	
  down	
  
	
  

	
  
	
  	
  
	
  

	
  

	
  
	
  
	
  
	
  

20	
  
Technical	
  Debt	
  Volcano	
  
From	
  Ma[	
  
Barcomb	
  
Story	
  Mapping	
  

Ch i l d

	
  Stor
ies	
  

Ac0vi0es	
  by	
  0m
e	
  

From	
  Janet	
  Gregory	
  &	
  Ma?	
  Barcomb	
  

Jeff	
  Pa[on:	
  h[p://
www.agileproductdesign.com/
blog/the_new_backlog.html	
  
	
  
Story	
  
Mapping	
  

From	
  Janet	
  
Gregory	
  &	
  
Ma?	
  
Barcomb	
  
Expert	
  /

	
  Discipli
ne	
  
skills	
  

Mul0-­‐	
  d

iscipline
	
  
skills	
  
T-­‐shaped	
  Skill-­‐set	
  

See	
  links	
  for	
  
more	
  by	
  Rob	
  
Lambert	
  and	
  
Adam	
  P.	
  Knight	
  

Depth of Skills

Breadth of Skills
Test	
  Automa0on	
  Volcano	
  

From	
  Ma[	
  
Barcomb	
  
Source:	
  Gojko	
  Adzic,	
  StarEast	
  2011	
  keynote	
  
Source:	
  Gojko	
  Adzic,	
  StarEast	
  2011	
  keynote	
  
Learn	
  to	
  write	
  maintainable	
  tests	
  
§ 

	
  
	
  
	
  
	
  
	
  
	
  
	
  

Get	
  over	
  the	
  “hump	
  of	
  pain”	
  
From	
  Gerard	
  Meszaros’	
  XUnit	
  Test	
  
Pa?erns	
  

29
Tests	
  as	
  Living	
  Documenta0on	
  
§  Understandable	
  
§  Who	
  will	
  really	
  use	
  them?	
  
§  Once	
  passing,	
  must	
  always	
  pass	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  

30
Supportive Culture

31	
  
The right infrastructure

32	
  
The right people

33	
  

More Related Content

Atd advanced topicsworkshop

  • 1. Advanced  Topics  in  Agile  Tes0ng   Agile  Tes0ng  Days  2013   Lisa  Crispin   Co-­‐Author  with  Janet  Gregory,  Agile  Tes)ng:  A  Prac)cal   Guide  for  Testers  and  Agile  Teams,  and  the  upcoming  More   Agile  Tes)ng    
  • 2. The  day…  Maybe!           1.  2.  3.  4.  Introduc0ons   What  do  we  want  to  talk  about   Priori0ze   Then  start  tackling  one  problem  at  a  0me.     2
  • 3. Expecta0ons   •  Collabora0ve,    problem  solving  aPtude,   open   •  Workshop  –  We’ll  share  outcomes  with  the   world  (keep  me  honest)   •  Some  slides  –  if  we  need  them  for   explana0on   •  You’ll  leave  with  some  experiments  to  help   with  your  biggest  problems  and  goals           3
  • 4. What  might  we  talk  about?  It’s  up  to  you!   Possible  topics:   •  •  •  •  •  •        Impact  mapping   Agile  tes0ng  quadrants   T-­‐shaped  Skillsets   Mind  mapping   Selec0ng  tools   Technical  debt   •  •  •  •  •  •        Distributed  teams   Out-­‐sourcing   Automa0on   Pairing  pa[erns   Experimen0ng   Others????     4
  • 5. Next:       •  Iden0fy  problems,  set  SMART  goals   •  Brainstorm  experiments  to  achieve  goals  and   reduce  problem  size   –  Impact  mapping   –  Other  discussion  and  brainstorming  exercises  such  as   mind  mapping,  drawing  on  the  whiteboard,  brain   wri0ng,  SWOT  analysis   –  We’ll  share  stories  and  experiences    
  • 6. In  table  groups:   1.  Write  down  biggest   tes0ng-­‐related   problems  for  your  own   team,  one  per  s0cky   note   2.  Dot  vote  to  priori0ze   3.  Set  SMART  goal  for   highest  priority   problem  
  • 7. Impact  Mapping   •  •  •  •  Why  are  we  doing  this?   Who  can  help?  Hinder?  Who  is  impacted?   How  can  they  help  or  hinder?  Impacts   What  can  we  do  to  support  impacts?              Deliverables   7  
  • 8. Example  Impact  Map     Based  on  example  at  h[p://impactmapping.org,  Gojko  Adzic   Recommended  book:  Impact  Mapping   8  
  • 9. Impact     Map   Stakeholders  /   personas   Impacts   Possible  deliverables   Possible  deliverables   9  
  • 10. More  Resources           The  following  slides  may  be  helpful  for  topics   we  discuss,  or  for  future  reference.   We’ll  write  down  resources,  and  there’s  a   separate  list  of  useful  links     10
  • 11. Agile  Tes0ng  Quadrants                 11
  • 12. ATDD  (Acceptance  Test  Driven  Development)   Explore   examples   User   Story   Accept   Story   High   level   AT   Fix   defects   Explore   Expand   Tests     Exploratory   Tes0ng   Code   &   Execute   tests   Auto-­‐   mate   tests   12  
  • 13. Mind  Mapping  as  a  Tool   rules   Sub  topic   user  name   save   first  3me   Sub  topic   rules   password   Sub  topic   encryp3on   MAIN   new  account   TOPIC   Sub  topic   change   Sub  topic   13  
  • 14. Choosing  Tools   §  §  §  §  §          Team  effort   Time   Requirements   Focus  on  goals,  problems,  not  tools.   Experiment     14
  • 15. •  Enables  testers  /   business  to  define  tests   •  test  code  can  be  in   programming  language   •  Programmers  can  run   tests  as  they  code   •  Testers  can  ask   programmers  for  help   •  Takes  0me  from   ‘coding’  produc0on   code   •  Tests  are  usually   through  the  UI   •  Programmers  aren’t   usually  willing  to  help   •  Tests  are  implemented   amer  the  code  is  wri[en   •  Testers  create  and   implement  all  tests   15  
  • 16. Understand  the  Purpose   §  §  §  §          Who’s  using  the  tests?  What  for?   What’s  being  automated?   Exis0ng  tools,  environment   Who’s  doing  what  for  automa0ng?     16
  • 17. What  Fits  Your  Situa0on   •  Exis0ng  skills     •  Language  of  applica0on  under  test   •  Collabora0on  needs   •  What’s  being  automated   •  Life  span,  future  use  of  tests               17
  • 19. Pairing  for  Tes3ng   TesterDesigner TesterMarketer TesterSupport Tester-Tester Tester-Coder Analyst, DBA, Sys Admin, Customer… 19  
  • 20. The  key  is  “sustainable  pace”   Technical  debt  slows  us  down                       20  
  • 21. Technical  Debt  Volcano   From  Ma[   Barcomb  
  • 22. Story  Mapping   Ch i l d  Stor ies   Ac0vi0es  by  0m e   From  Janet  Gregory  &  Ma?  Barcomb   Jeff  Pa[on:  h[p:// www.agileproductdesign.com/ blog/the_new_backlog.html    
  • 23. Story   Mapping   From  Janet   Gregory  &   Ma?   Barcomb  
  • 24. Expert  /  Discipli ne   skills   Mul0-­‐  d iscipline   skills  
  • 25. T-­‐shaped  Skill-­‐set   See  links  for   more  by  Rob   Lambert  and   Adam  P.  Knight   Depth of Skills Breadth of Skills
  • 26. Test  Automa0on  Volcano   From  Ma[   Barcomb  
  • 27. Source:  Gojko  Adzic,  StarEast  2011  keynote  
  • 28. Source:  Gojko  Adzic,  StarEast  2011  keynote  
  • 29. Learn  to  write  maintainable  tests   §                Get  over  the  “hump  of  pain”   From  Gerard  Meszaros’  XUnit  Test   Pa?erns   29
  • 30. Tests  as  Living  Documenta0on   §  Understandable   §  Who  will  really  use  them?   §  Once  passing,  must  always  pass                       30