Exploratory Testing
First some definitions.
Testing
• “Gathering information with the
intention of informing a decision.” –
Jerry Weinberg
• “Testing is an empirical, technical
investigation of a product, done on behalf
of stakeholders, with the intention of
revealing quality-related information of the
kind that they seek.” – Cem Kaner
• “Questioning a product in order to
evaluate it.” – James Bach
Quality
• “Conformance with requirements.” – Philip
Crosby
• “Quality is value to some person.” – Jerry
Weinberg
• “Successful testers avoid a fascination with
functional correctness, and focus on ways in
which people might obtain value from a
program—or have their value unfulfilled or
threatened.” – Michael Bolton
http://www.developsense.com/blog/2011/02/why-do-some-testers-find-the-critical-problems/
Bug
• “Doesn’t match specifications of written
requirements.”
• “Failure to meet reasonable expectations of a
user.” – G. Myers
• “A bug is something that bugs somebody.” –
James Bach
• “Anything that causes an unnecessary or
unreasonable reduction of the quality of a
software product.” – BBST Bug Advocacy
Why are we testing?
http://en.wikipedia.org/wiki/File:Columbus_letter_Spanish_text.jpg
Exploratory Testing is about learning
• “If you are not using the learning garnered
from test design and test execution in a
continuous and rapid loop to optimize the
quality of the work, you are not doing
exploratory testing.” – Michael Bolton
Session-Based Testing
http://www.bettertesting.co.uk/content/wp-content/uploads/2011/03/Session-Based-Testing-in-Practice.jpg
Some of the Elements of Exploratory
Testing
• Test Design
• Careful Observation
• Critical Thinking
• Diverse Ideas
• Rich Resources
http://www.satisfice.com/articles/et-article.pdf
Test Design
• Function Testing
• Domain Testing
• Specification-based Testing
• Risk-based Testing
• …
• Heuristic Test Strategy Model
(http://www.satisfice.com/tools/htsm.pdf)
Few Words About Context-Driven
Testing
• The value of any practice depends on its context.
• There are good practices in context, but there are no best practices.
• People, working together, are the most important part of any project’s
context.
• Projects unfold over time in ways that are often not predictable.
• The product is a solution. If the problem isn’t solved, the product doesn’t
work.
• Good software testing is a challenging intellectual process.
• Only through judgment and skill, exercised cooperatively throughout the
entire project, are we able to do the right things at the right times to
effectively test our products.
http://context-driven-testing.com/
Careful Observation
Inattentional Blindness
The video shows that it’s possible to miss something right in front of your
eyes. The point of the video is to show that it’s possible to miss something
that’s right in front of your eyes.
IB makes you confront the illusion of attention.
That’s it.
Knowing about inattentional blindness doesn’t make you better at noticing
things, and there’s zero correlation between the observational skills of those
who see the gorilla vs. those who don’t. While I agree that it’s critical for
testers to know that inattentional blindness exists, it’s a small nugget of
information in a pretty big pool of stuff that actually helps testers.
Alan Page - http://angryweasel.com/blog/?p=594
We need to vary our actions
• Need different perspective / angle
– Personas
– Tours (http://michaeldkelly.com/blog/2005/9/20/touring-heuristic.html or
http://msdn.microsoft.com/en-us/library/jj620911.aspx#bkmk_tours)
– Pairing
Critical Thinking
Huh? Really? So?
http://www.nasa.gov/centers/ivv/pdf/174321main_Annual_Report_06_Final.pdf
http://lesswrong.com/lw/hab/rocket_science_and_big_money_a_cautionary_tale_of/
Diverse Ideas
• Heuristics
– You Are Not Done Yet
http://www.thebraidytester.com/downloads/YouAreNotDoneYet.pdf
– Test Heuristics Cheat Sheet http://testobsessed.com/wp-
content/uploads/2011/04/testheuristicscheatsheetv1.pdf
– The Little Black Book On Test Design
http://www.thetesteye.com/papers/TheLittleBlackBookOnTestDesign.pdf
Oracles
“A way to recognize a problem.” – Michael Bolton & James Bach
a) A feeling like confusion or annoyance.
b) A desirable consistency between related things.
c) A person whose opinion matters.
d) An opinion held by a person who matters.
e) A disagreement among people who matter.
f) A reference document with useful information.
g) A known good example output.
h) A known bad example output.
i) A process or tool by which output is checked.
j) A process or tool that helps a tester identify patterns.
http://www.developsense.com/blog/2013/01/oracles-the-brainstream-media/
• People!
– “The diversity of tester temperaments and
backgrounds on a team can also be harnessed by
savvy exploratory testers through the process of
group brainstorming to produce better test ideas.”
– James Bach
“The roof don’t leak because the holes in each layer
don’t line up with each other.” – George Dinwiddie
on Twitter
Rich Resources
• Tools
• Information sources (notes, books, blogs)
• Test data
• Friends
Tester Freedom Scale
Jon Bach / Quardev, Inc., Seattle, WA 98105
Fractals
Adam Knight (http://www.a-sisyphean-task.com/2013/01/fractal-exploratory-
testing.html#.UX7WTitgYZ8)
Which are the most important traits a tester should have
(or should develop) in order to succeed today?
(http://qablog.practitest.com/2012/11/five-testing-
question-with-jerry-weinberg/)
• Courage
• Communication skill
• Self-esteem.
Jerry Weinberg
Exploratory testing

Exploratory testing

  • 1.
  • 2.
  • 3.
    Testing • “Gathering informationwith the intention of informing a decision.” – Jerry Weinberg • “Testing is an empirical, technical investigation of a product, done on behalf of stakeholders, with the intention of revealing quality-related information of the kind that they seek.” – Cem Kaner • “Questioning a product in order to evaluate it.” – James Bach
  • 4.
    Quality • “Conformance withrequirements.” – Philip Crosby • “Quality is value to some person.” – Jerry Weinberg
  • 5.
    • “Successful testersavoid a fascination with functional correctness, and focus on ways in which people might obtain value from a program—or have their value unfulfilled or threatened.” – Michael Bolton http://www.developsense.com/blog/2011/02/why-do-some-testers-find-the-critical-problems/
  • 6.
    Bug • “Doesn’t matchspecifications of written requirements.” • “Failure to meet reasonable expectations of a user.” – G. Myers • “A bug is something that bugs somebody.” – James Bach • “Anything that causes an unnecessary or unreasonable reduction of the quality of a software product.” – BBST Bug Advocacy
  • 7.
    Why are wetesting?
  • 8.
  • 10.
    Exploratory Testing isabout learning • “If you are not using the learning garnered from test design and test execution in a continuous and rapid loop to optimize the quality of the work, you are not doing exploratory testing.” – Michael Bolton
  • 11.
  • 12.
    Some of theElements of Exploratory Testing • Test Design • Careful Observation • Critical Thinking • Diverse Ideas • Rich Resources http://www.satisfice.com/articles/et-article.pdf
  • 13.
    Test Design • FunctionTesting • Domain Testing • Specification-based Testing • Risk-based Testing • … • Heuristic Test Strategy Model (http://www.satisfice.com/tools/htsm.pdf)
  • 14.
    Few Words AboutContext-Driven Testing • The value of any practice depends on its context. • There are good practices in context, but there are no best practices. • People, working together, are the most important part of any project’s context. • Projects unfold over time in ways that are often not predictable. • The product is a solution. If the problem isn’t solved, the product doesn’t work. • Good software testing is a challenging intellectual process. • Only through judgment and skill, exercised cooperatively throughout the entire project, are we able to do the right things at the right times to effectively test our products. http://context-driven-testing.com/
  • 15.
  • 16.
  • 17.
    The video showsthat it’s possible to miss something right in front of your eyes. The point of the video is to show that it’s possible to miss something that’s right in front of your eyes. IB makes you confront the illusion of attention. That’s it. Knowing about inattentional blindness doesn’t make you better at noticing things, and there’s zero correlation between the observational skills of those who see the gorilla vs. those who don’t. While I agree that it’s critical for testers to know that inattentional blindness exists, it’s a small nugget of information in a pretty big pool of stuff that actually helps testers. Alan Page - http://angryweasel.com/blog/?p=594
  • 21.
    We need tovary our actions • Need different perspective / angle – Personas – Tours (http://michaeldkelly.com/blog/2005/9/20/touring-heuristic.html or http://msdn.microsoft.com/en-us/library/jj620911.aspx#bkmk_tours) – Pairing
  • 22.
  • 23.
  • 26.
  • 30.
  • 31.
    Diverse Ideas • Heuristics –You Are Not Done Yet http://www.thebraidytester.com/downloads/YouAreNotDoneYet.pdf – Test Heuristics Cheat Sheet http://testobsessed.com/wp- content/uploads/2011/04/testheuristicscheatsheetv1.pdf – The Little Black Book On Test Design http://www.thetesteye.com/papers/TheLittleBlackBookOnTestDesign.pdf
  • 32.
    Oracles “A way torecognize a problem.” – Michael Bolton & James Bach a) A feeling like confusion or annoyance. b) A desirable consistency between related things. c) A person whose opinion matters. d) An opinion held by a person who matters. e) A disagreement among people who matter. f) A reference document with useful information. g) A known good example output. h) A known bad example output. i) A process or tool by which output is checked. j) A process or tool that helps a tester identify patterns. http://www.developsense.com/blog/2013/01/oracles-the-brainstream-media/
  • 33.
    • People! – “Thediversity of tester temperaments and backgrounds on a team can also be harnessed by savvy exploratory testers through the process of group brainstorming to produce better test ideas.” – James Bach “The roof don’t leak because the holes in each layer don’t line up with each other.” – George Dinwiddie on Twitter
  • 34.
    Rich Resources • Tools •Information sources (notes, books, blogs) • Test data • Friends
  • 35.
    Tester Freedom Scale JonBach / Quardev, Inc., Seattle, WA 98105
  • 36.
  • 37.
    Which are themost important traits a tester should have (or should develop) in order to succeed today? (http://qablog.practitest.com/2012/11/five-testing- question-with-jerry-weinberg/) • Courage • Communication skill • Self-esteem. Jerry Weinberg

Editor's Notes

  • #22 Tours (Functions, Configurations, Extreme Value)
  • #23 Critical thinking is reflective reasoning about beliefs and actions.[1][2] It is a way of deciding whether a claim is always true, sometimes true, partly true, or false. Critical thinking can be traced in Western thought to the Socratic method of Ancient Greece and, in the East, to the Buddhist kalamasutta and Abhidharma. Critical thinking is an important component of most professions. It is a part of formal education and is increasingly significant as students progress through university to graduate education, although there is debate among educators about its precise meaning and scope.[3]