Exploratory Testing
Exploratory Testing
product.
2. What kind of skills do you need and how do testers develop these skills?
2
"Exploratory testing involves simultaneously learning, planning,
running tests, and reporting / troubleshooting results."
Dr. Cem Kaner (2001)
3
• Manual testing by professional skilled testers
• Freedom, flexibility and fun for testers
• Controllability, reliability and high quality for managers
• Optimized to find defect
• Continually adjusting plans, re-focusing on the most
promising risk areas
• Following hunches/intuitions based on previous test
validation results
• Minimizing time spent on documentation
Focus on manual
validation – making
testing activities agile
4
Exploratory testing seeks to find out how the software actually
works, and to ask questions about how it will handle difficult
and easy cases.
5
6
7
Exploratory Tester is first a test
designer. They systematically explore
the product under test.
Method Examples:
• Rule of Thumb
• Educated Guess
• Common Sense
8
The quality of the testing is dependent on the tester's skill of
inventing test cases and finding defects. The more the tester
knows about the product and different test methods, the better
the testing will be.
9
10
Epistemology is the study of how we know
what we know. The philosophy of science
belongs to Epistemology.
1-11
All good testers practice Epistemology in their ability to:
• Pose useful questions
• Observe what’s going on
• Describe what they perceive
• Think critically about what they know
• Recognize and manage bias
• Form and test assumptions
• Think strategically
• Analyze and reveal useful information
12
13
14
• Helps in revealing many unknown and un-detected bugs,
which is very hard to find out through normal testing.
15
Exploratory testing:
1. Done while a tester explores
2. Performed by walk through the product
3. Interactive test process with defined quality objectives
4. Defined specific tasks, objectives and deliverables
Ad-hoc testing:
1. Informal way of testing
2. Performed once the product is ready
3. Interactive but not defined anywhere
4. No specific tasks, objectives and deliverables
16
• A common goal of exploration is to probe for weak
areas of the program.
• Test team’s resource consumption per week:
• 25% of the group’s time developing new tests
• 50% executing old tests (including bug regression)
• 25% on exploratory testing
17
18
Advantages:
• Less Preparation is needed
• Earlier identification of defects
• Approach intellectually stimulating
• Based on deductive reasoning of previous
results
• Information gained while testing to
design new and better tests
19
Disadvantages:
• Tests are not eligible for advanced inspections
• Difficult to show which tests have been
executed
• Freestyle exploratory test ideas, when
revisited, are unlikely to be performed in
exactly the same manner
• Limited documentation to repeat specific
details of the earlier tests.
20
21
• Delegation
• Participation
Test Process • Pair Testing
• Test Observation
• Test Strategy
Test Coach • Involved in the test
• Test Coverage
Test Reports • Defect Report
22
Exploratory testing is interpreted in many
ways. Don’t let fear, doubt or uncertainty
get in the way of the possibilities to expand
your testing.
23
• Beck, K., Test-Driven Development by Example, Addison-Wesley, 2003.
• Crispin, L., T. House, Testing Extreme Programming, Addison-Wesley,
2003.
• Kaner, C., J. Bach, B. Pettichord, Lessons Learned in Software Testing,
John Wiley & Sons, 2002.
• Cem Kaner, A Tutorial in Exploratory Testing,
• Kaner, Falk, and Nguyen, Testing Computer Software (Second Edition),
Van Nostrand Reinhold, New York, 1993. p. 6, 7-11.
• Cem Kaner, James Bach, Exploratory & Risk Based Testing, 2004
24