the mindset change for the agile tester
DESCRIPTION
On traditional projects, testers usually join the project after coding has started, or even later when coding is almost finished. Testers have no role in advising the project team early regarding quality issues but focus only on finding defects. They become accustomed to this style of working and adjust their mental processes accordingly. In agile, testers must collaborate closely with customers and programmers throughout the development lifecycle, where their focus changes from finding defects to preventing them. Janet Gregory shares ways to change the tester’s mindset from “How can I break the software?” to “How can I help deliver excellent software?”—a critical mental shift on agile projects. Another facet of the mind-set change is learning how to test early and incrementally. Janet uses interactive exercises and examples to help you understand how effective this mindset change is—and how you can apply it on your agile projects.TRANSCRIPT
TJ AM Tutorial
4/30/13 8:30AM
The Mindset Change for the Agile
Tester
Presented by:
Janet Gregory
DragonFire, Inc.
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ [email protected] ∙ www.sqe.com
Janet Gregory
Agile testing coach and practitioner Janet Gregory (@janetgregoryca) is the coauthor of Agile Testing: A Practical Guide for Testers and Agile Teams and a contributor to 97 Things Every Programmer Should Know. Janet specializes in showing agile teams how testers can add value in areas beyond critiquing the product. For the past ten years, she has been working with teams to transition to agile development. Janet teaches agile testing courses and tutorials worldwide, contributes articles to leading publications, and enjoys sharing her experiences at conferences and user group meetings worldwide. Find more information at janetgregory.ca or visit her blog.
13/03/2013
1
Janet Gregory, DragonFire Inc.Copyright 2013
April 2013
StarEast, Orlando
1
13/03/2013
2
Copyright 2013
DragonFire Inc.
First agile team – 2000
Currently – coaching, testing
Book – Agile Testing; January 2009
3
Copyright 2013
DragonFire Inc.
• Some ‘Lecture’
• Some ‘Exercises’
• Handling questions ..
13/03/2013
3
Copyright 2013
DragonFire Inc.
• Iteration (sprint)
• Feature (epic)
• Story
• Done (story done, feature done, release done)
• Feedback
5
Copyright 2013
DragonFire Inc.
• more than “just” testing code
• an activity; not a phase
6
13/03/2013
4
Copyright 2013
DragonFire Inc.
What challenges do you see for agile testers?
7
13/03/2013
5
Copyright 2013
DragonFire Inc.
Instead of
◦We’re here to find bugs … or ensure requirements are met … or break the software …
Think
– What can I do to help deliver
the software successfully!
9
Copyright 2013
DragonFire Inc.
Can you think of some ways that you cross
boundaries in how you work?
10
13/03/2013
6
Copyright 2013
DragonFire Inc.
• Simplicity
• Feedback
• Respond to change
11
Copyright 2013
DragonFire Inc.
Analytical
Relentlessly Curious
Observant
Skeptical
Empiricist
Critical Thinker
Investigator
http://www.slideshare.net/ehendrickson
12
13/03/2013
7
Copyright 2013
DragonFire Inc.
What does this phrase mean to people?
Discuss at your tables,
and then we’ll debrief
13
T-shaped Skill-set
13/03/2013
8
15
16
play, experiment, learn
keeps us vital and alive
13/03/2013
9
Copyright 2013
DragonFire Inc.
• Gives us an enthusiasm for life that is
irreplaceable. Without it, life just doesn’t taste
good - Lucia Capocchione
• You can discover more about a person in an hour
of play than in a year of conversation. - Plato
• Play is our brain’s favourite way of learning –
Dianne Ackerman
Portia Tung (see references)
17
13/03/2013
10
Copyright 2013
DragonFire Inc.
• Communication means ... sharing
◦ Ideas, information, decisions, solutions, etc.
• Collaboration means ...
◦Working together to find solutions, etc.
◦ The ‘whole team’ …..
� Customers, testers and programmers …..
19
Copyright 2013
DragonFire Inc.
• Power of Three
• 3 Amigos
• Pairing
• Continuous feedback
20
13/03/2013
11
Picture by Augusta Evangelisti, based on diagram from Elisabeth Hendrickson
Copyright 2013
DragonFire Inc.
User
Story
Expand
Tests
High
level
AT
Auto-
mate
tests
Code
&
Execute
tests
Explore
Exploratory
Testing
Accept
Story
Fix
defects
Explore
examples
22
13/03/2013
12
Copyright 2013
DragonFire Inc.
• Examples provide common language
• Shared common understanding
• Coding and testing concurrently
• Involves whole team
• Shared definition of DONE
• Prevents defects
23
• Question
• Elicit example
• Uncover hidden
assumptions
24
13/03/2013
13
Copyright 2013
DragonFire Inc.
Checking:
◦ Confirmation
◦ Machine decidable
Testing:
◦ Exploration & learning
◦ Requires sapience
**Definitions of testing vs. checking by Michael Bolton
GUI
API
Unit Tests
26
13/03/2013
14
27
Copyright 2013
DragonFire Inc.
It’s not just about code !!!
◦ Test assumptions
◦ Uncover hidden assumptions
The goal:
◦ Shared common understanding of the story
◦ Preventing defects (eliminate waste)
28
13/03/2013
15
29
Copyright 2013
DragonFire Inc.
• Understand the
business needs
• What level are at?
• Collaborate
appropriately
Release level
Iteration level
Story test level
Task level
Sys
tem
le
vel
30
13/03/2013
16
31
Copyright 2013
DragonFire Inc.
• Know your
customers
• Make them real
• Plan your
exploratory testing
using them
• Picture – from Jeff Patton’s
Pragmatic Personas weekly column
on Sticky Minds (1/25/2010)
32
13/03/2013
17
LegendGood to GoSome testing; could use moreMajor issueNo testing doneNot applicable
13/03/2013
18
Copyright 2013
DragonFire Inc.
• Know your context
• Have a tool box full
• Simple is often best
• Use your imagination
Let’s look at some examples
35
Taken from
Ready to use
Graphic
Organizers for
primary grade
teachers
13/03/2013
19
Day 1
A new user
wants to
create her
account
Day 1
The new user
wants to log
into the
system
Day 2
An existing
user wants to
change her
password
Day 2
An existing
user forgets
her password
Day 2
The new user
wants to log
into the
system
Day 30
The system
asks user to
change her
password
Day ??
…….
Day 60
The user
wants to
delete her
account
Day ??
…….
Day ??
…….
Words / Phrases
• I wonder ….
• What caught your
attention?
• Could you show me?
• What makes you think
there is more?
Questions / Predictions
• What might happen
next?
• Why would that be?
• What is the worst thing
that could happen?
• …. or the best?
• What assumptions do
you have?
13/03/2013
20
Copyright 2013
DragonFire Inc.
Block
account
User
enters
wrong
password
Wrong
password a
2nd time;
Issue
warning
User can’t
log inThey are in
the
database
The
credentials
meet
req’ts
They
entered
their
credentials
correctly
Their
password
expired ….
Wrong
password a
third time
Prevent
user from
logging in
again;
Display
msg
39
Copyright 2013
DragonFire Inc.
• Practice anticipating what will happen
• Define your tests
• Check – running tests or collaborate with
customers and programmers before* coding
• Be prepared to change your tests if your
predictions are wrong
• Learn by reviewing – what questions could
you have asked first.
40
13/03/2013
21
Sub topic
Sub topic
Sub topic
MAIN
TOPIC
Sub topic
Sub topic
first time
change
new account
password
rules
encryption
saveuser name
rules
Login : User name & password
Copyright 2013
DragonFire Inc. 42
13/03/2013
22
Copyright 2013
DragonFire Inc.
• Think simple
• Have a variety of tools
• Adapt to your needs
• Look in places you may not have considered
43
13/03/2013
23
Copyright 2013
DragonFire Inc.
• Curiosity
• Ability to observe
• Ability to challenge
• Ability to adapt
• To recognize contexts
• Ability to THINK !
45
46
Challenge
Yourself !
13/03/2013
24
Copyright 2013
DragonFire Inc.
Agile Testing: A Practical Guide for
Testers and Agile Teams
By Lisa Crispin and Janet Gregory
www.agiletester.ca
Contact info
www.janetgregory.ca
http://janetgregory.blogspot.com/
Email: [email protected]
Twitter: janetgregoryca
47
• Elisabeth Hendrickson
� CAST keynote http://www.slideshare.net/ehendrickson
� Explore It! – new book on Pragmatic Programmers
• Ben Kelly, http://lets-test.com/wp-content/uploads/2012/05/LetsTest2012-
BenKelly-TheTestingDead.pdf
• Markus Gartner, http://www.shino.de/2012/07/16/cast-2012-the-testing-dead/
• Paul Carvalho, http://www.agilejournal.com/articles/columns/column-
articles/6515-low-tech-tools-for-the-thinking-tester
• Michael Bolton, http://www.developsense.com/blog/2009/08/testing-vs-
checking
• Ready to Use Graphic Organizers
13/03/2013
25
• http://www.exampler.com - Brian Marick’s web site
• Gojko Adzic, Bridging the Communication Gap, 2009; Specification by
Example, 2011
• www.stickyminds.com/ Pragmatic Personas - Jeff Patton’s weekly
column 1/25/2010
• Jean Tabaka, Collaboration Explained, 2006 Addison-Wesley
• http://www.uie.com/articles/indispensable_skills
• Portia Tung – Power of Play
http://www.selfishprogramming.com/category/playmaking/
• Ester Derby and Dianne Larsen, Agile Retrospectives