exploratory testing in practice
DESCRIPTION
What is this thing called "Exploratory Testing"? How do you do it? Why is it important?TRANSCRIPT
![Page 1: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/1.jpg)
Exploratory Testing
in Practice
Elisabeth Hendrickson Blog: testobsessed.com Twitter: @testobsessed
Slides Last updated June 22, 2012
![Page 2: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/2.jpg)
Two Sides of Testing
Tested =
+ Checked Explored
![Page 3: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/3.jpg)
That’s Nice…
…But we Believe in our
comprehensive, repeatable regression
tests.
![Page 4: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/4.jpg)
Incidental Correctness
Given a series of 1’s and 0’s,
Compute the corresponding
decimal number
x
6
5
7
0
011
101
111
000
3
5
7
0 Result Input Expected
![Page 5: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/5.jpg)
Missed Requirements
Hey, Where’s the motor for this
remote control car?
Motor?!? You never
said anything about a motor!
![Page 6: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/6.jpg)
Real World Users Happen
You assume they’re
reasonable people
who will do
reasonable things.
They aren’t and
they won’t.
![Page 7: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/7.jpg)
So What Is Exploratory Testing?
a systematic approach for
discovering risks
using rigorous
analysis techniques
coupled with
testing heuristics.
![Page 8: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/8.jpg)
OK…But What Do You Actually Do?
Simultaneously…
…learning about the Target
…While designing tests
…And executing Them Immediately
using feedback from the last Little Experiment to inform the next
(Term coined by Cem Kaner. Definition refined by James Bach. Others have contributed to ET including
James Lyndsay, Jonathan Kohl, Michael Bolton.)
![Page 9: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/9.jpg)
Experiment
Next, let’s try interrupting the
transaction here.
So it handled all the variations
on disconnected networks we
could think of…
![Page 10: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/10.jpg)
Discover Things You Can Vary
![Page 11: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/11.jpg)
11
Use State Models
Update System
Check Network
Idle
Time to connect
System Updated
No Network
Get Updates
Network Avail
No Updates
Content Downloaded
![Page 12: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/12.jpg)
Use Data Models
Customer
Orders
Vendor
Products
Has 0 or More
Has 0 or More
Has 1 Or More
![Page 13: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/13.jpg)
Use Deployment Diagrams
Local Server Farm
Agent AWS
![Page 14: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/14.jpg)
Use Heuristics
Counts: 0, 1, Many
See the Test Heuristics Cheatsheet for more http://bit.ly/testcheatsheet
Position: Beginning, Middle, End
Selection: Some, None, All
Violate Domain-Specific Rules:
Age -1 IP address 999.999.999.999
Goldilocks: too big, too small,
just right
Interrupt States
Delete Dependent Data
![Page 15: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/15.jpg)
In Flight Feedback at #AU2H
Jon Bach
(Exploring)
Matt Barcomb
(Coding)
![Page 16: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/16.jpg)
Result: Feedback on Process AND Product
I’ll add things like that to the
acceptance criteria.
We need to think about that kind of
thing in future designs too.
We’ve automated the regression
test when we fixed the bug.
![Page 17: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/17.jpg)
Pitfall: Going Off in the Weeds
it doesn’t work on 15 year old laptops running Windows 3.1!
Uh…
Why Would We
Care?
![Page 18: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/18.jpg)
Focus with Charters
Explore (Area/feature)
With (Resources,
conditions, Dependency,
etc.)
to discover (information)
![Page 19: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/19.jpg)
Structure with Time Boxed Sessions
Session
Session
Session
Session
Session
Session
Explore login in combination with bookmarks & history to discover information about interactions.
Explore the site with various browsers and settings to discover risks related to unsupported configurations.
Explore error handling using data type attacks to find problems related to data validation.
Charters Sessions
![Page 20: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/20.jpg)
Explore Early, Explore Often
![Page 21: Exploratory Testing in Practice](https://reader033.vdocuments.site/reader033/viewer/2022052900/555d50f9d8b42a52368b497c/html5/thumbnails/21.jpg)
Exploratory Testing on Agile Projects
Within an Iteration
Automated Unit Tests
Automated Acceptance
Tests
Exploratory Testing
Define “done”, represent executable
requirements
Drive design, represent executable
specifications
Discover risks EARLY