A Course in Black Box Software Testing
Examples of Exploratory Testing
Copyright (c) Cem Kaner, 2004
The essence of exploratory testing is that you learn while you test, and you design your tests based on what you are learning.
- One definition (Bach's) is “Any testing to the extent that the tester actively controls the design of the tests as those tests are performed and uses information gained while testing to design new and better tests.”
- Another definition (Bach/Kaner) is any testing process that involves simulteous learning, test design, and test execution.
The examples below only scratch the surface of the exploratory process, because they show an easily-understood sequence of test / result / follow-up test / result and so on. We learn as we go, but we only learn from the results of the individual tests. In an exploratory session,
- the tester might have been following up a more carefully researched risk analysis to get to the starting point of this sequence, and thus might have a much deeper interpretation of the test results than the superficial presentation we give here
- at any point in the session, the tester might stop test execution to read, ask questions, or learn more about the program and its risks before designing and running the next test.
Any type of test can be designed and/or used in an exploratory way.
The following examples illustrate the application of the function testing style of analysis.
- In Some Cases DivX Player Appears Frozen
- Adobe’s Select Image Tool Selects the Wrong Area
- Removing Saved Form Information in FireFox
- Exploring Themes in FireFox
- Exploring The Navigation Bar in FireFox
- Exploring Usability Concerns in Paint
- Adding Stocks in MidCast
Copyright (c) Cem Kaner 2004
This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/2.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
These notes are partially based on research that was supported by NSF Grant EIA-0113539 ITR/SY+PE: "Improving the Education of Software Testers." Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.