Defining Exploratory Testing

In January, 2006, several of us worked on definitions of exploratory testing at the Exploratory Testing Research Summit (another link), with follow-up work at the Workshop on Heuristic and Exploratory Techniques in May.  We didn’t reach unanimous agreement at that meeting. However, later discussions based on the meeting’s notes yielded this definition:

“Exploratory software testing is a style of software testing that emphasizes the personal freedom and responsibility of the individual tester to continually optimize the value of her work by treating test-related learning, test design, test execution, and test result interpretation as mutually supportive activities that run in parallel throughout the project.”

I cannot present this as a consensus definition from WHET, both because (a) not everyone who came to WHET would agree and (b) several other people helped polish it. But I am uncomfortable presenting it as if it is primarily from James Bach, Jon Bach, Mike Bolton, and/or me. The authorship / endorsement list should be much broader.

If you would like to be identified either as one of the authors of this definition or as an endorser of it, can you please post a comment to this blog or send me an email (kaner@kaner.com)

21 Responses to “Defining Exploratory Testing”

  1. Anson DeWolf says:

    I would like to be identified as an endorser of this definition. Although, I did change “her work” to “their work” when I updated my companies master test plan document.
    I am a member of AST, have been a James Bach disciple since 1998, took your Testing Computer Software course in 1999 and, with a little help from James in polishing some definitions, presented on the topic of Exploratory Testing to the Atlanta Quality Assurance Association in 2007.

  2. Hi Cem,

    I would like to endorse the definition. I think it covers the key points behind it: freedom with responsibility, continuous learning, designing and execution.

  3. Andy Tinkham says:

    I’d like to endorse this definition, as I don’t think any of our conversations at FIT helped to refine it.

  4. +1. Co-author (I think I had something to do with “freedom and responsibility”) and endorser. It’s the clearest and most useful definition so far.

    This is one definition that I use. The other that I commonly use is still “simultaneous (or parallel) test design, test execution and learning”. The definitions are not intended to be in disagreement in any way. One is shorter and less formal, at the expense of some explicitness; the other is longer, more formal, and more explicit (and I thank you, Cem, for synthesizing it from a number of elements).

    Nor do I intend the definitions to be exclusive; I use one or the other or both depending on who I’m speaking to, what they need to know, and how much time I have. I sometimes use Elisabeth Hendrickson’s story of the developer who called it “test-driven testing”.

    —Michael B.

  5. I am happy to endorse this. Thanks to all the authors.

  6. I agree with the short and long definitions mentioned by Michael, but I also like to talk about the importance of feedback guiding testing activity (implied in those definitions) and the hunt for bug clusters, which is why ET is typically so powerful….
    cheers,
    Erik

  7. Ben Simo says:

    I too endorse this definition.

  8. Jeff Fry says:

    I’m very happy to endorse this definition. It’s a great expansion on the short one Michael references above, which I also use (and which I tend to associate with Cem, though perhaps out of ignorance).

    Michael, I like the Hendrickson reference to ET as test-driven testing! :)

  9. Anne Martin says:

    I readily can endorse and agree with this definition. And it’s quite timely – I was just thinking today how I would define ET if asked at work, as some folks asked for information following my attendance at CAST. This definition encompasses far more than anything I played with – many thanks to all of the authors.

  10. Henrik Andersson says:

    I’d like to endorse this definition
    I especially like the parts about emphasizing personality and individuality.
    I have often used this definition when I’m presenting about Exploratory Test.

  11. Dawn Haynes says:

    In every course I teach, I take the opportunity to introduce, explain or clarify notions about ET. I endorse this definition and would prefer to use it in my courses as it is more detailed and highlights key concepts like “personal freedom and responsibility.” Thanks to all who assisted in crafting/clarifying the definition.

  12. Carsten Feilberg says:

    I will endorse this definition, which is very clearly stated.

    Only – why is it restricted to ‘a project’ ? In my (very) humble opinion ET has a lot to do with thinking and that we all (hopefully) do all the time. ;-)

    I will use it whenever I teach and talk to people about testing! Thanks to all the authors and co-authors for the good work.

  13. Cem — I certainly endorse this definition, and make whatever small claim to co-authorship as a participating member of WHET that year. I also agree with Carsten, that for me, the idea extends far beyond the testing activity, and into how we think about, talk about, design, and ultimately build systems; although, those activities may be beyond the boundary of Exploratory Testing, and into newer areas specifically named, such as Exploratory Design.

  14. I am glad to be an endorser of this definition of ET.

    I have been a firm believer of ‘personal freedom and responsibility of the individual tester’ as I think this bring better results in whatever individuals do.

    I also agree with authors about ‘continually optimizing the value of one’s work. I only changed ‘her’ with ‘one’s’.

  15. Rob Lambert says:

    Thanks guys, I’ve been searching for a succinct, direct and quanitifiable way of describing exploratory testing and you have now provided it for me. I would be more than happy to endorse this description.

    “personal freedom and responsibility of the individual tester” – what a sentence, this takes the ownership back to the tester. Not only that but it clearly shouts that software testers do have judgement, do have skills, do have a sense of doing a great job and ultimately should be the team member making the decisions on testing.

    Thanks
    Rob

  16. Paul Szymkowiak says:

    I also endorse this definition.

  17. Brian Osman says:

    Hi Cem,

    Yes i definintely endorse this definintion – much thanks Dr Kaner and co-authors. I like the idea of continually optimizing the value of one’s work which implies that we strive to be better and to do better and not hide behind some faceless template!

    Much Thanks

    Brian

  18. Himanshu says:

    Yeah I endorse this definition..Exploratory software testing should give freedom to tester, so that he can perform his tasks individually and responsibly.

  19. Dhanasekar says:

    I do endorse this definition,Thanks to Dr Kaner and others for the effort. I do believe that testers should have freedom at the same time responsible.

  20. SureshBabu says:

    Exploratory Testing Definition: Extreme (I mean’t breadth and depth) Testing with an exploration mindset

  21. Mark Waite says:

    I endorse this definition.