Thought to have first been defined by Cem Kaner et. al. in Testing Computer Software [KAN99], exploratory testing has been publicized by the work of others,
including James Bach. Bach advocates a style of exploratory testing where short sessions of exploration
lasting approximately 90 minutes are briefly planned and undertaken, with the results recorded and
reviewed.
The following quote from James Bach explains some of the benefits of Exploratory Testing:
"Exploratory software testing is a powerful and fun approach to testing. In some situations, it can be
orders of magnitude more productive than scripted testing. I haven't found a tester yet who didn't, at
least unconsciously, perform exploratory testing at one time or another. Yet few of us study this
approach, and it doesn't get much respect in our field. It's high time we stop the denial, and publicly
recognize the exploratory approach for what it is: scientific thinking in real-time." [BAC01a]
Bach provides a simple definition of the technique as "test design and test execution at the same time".
This technique for testing computer software does not require significant advanced planning and is tolerant
of limited documentation for the target-of-test. Instead, the technique relies mainly on the skill and
knowledge of the tester to guide the testing, and uses an active feedback loop to guide and calibrate the
effort.
We recommend the following resources for further information on exploratory testing:
|