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)
July 14th, 2008 at 9:43 am
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.
July 14th, 2008 at 2:30 pm
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.
July 14th, 2008 at 8:49 pm
I’d like to endorse this definition, as I don’t think any of our conversations at FIT helped to refine it.
July 15th, 2008 at 1:20 am
+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.
July 15th, 2008 at 9:44 am
I am happy to endorse this. Thanks to all the authors.
July 15th, 2008 at 6:14 pm
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
July 15th, 2008 at 9:33 pm
I too endorse this definition.
July 18th, 2008 at 1:14 pm
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! :)
July 19th, 2008 at 9:45 pm
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.
July 24th, 2008 at 5:15 am
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.
August 12th, 2008 at 9:03 pm
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.
August 13th, 2008 at 6:29 am
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.
September 2nd, 2008 at 9:23 pm
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.
September 29th, 2008 at 3:03 am
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’.
December 3rd, 2008 at 4:01 am
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
January 4th, 2009 at 6:02 pm
I also endorse this definition.
May 26th, 2009 at 3:15 pm
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
July 22nd, 2009 at 3:18 am
Yeah I endorse this definition..Exploratory software testing should give freedom to tester, so that he can perform his tasks individually and responsibly.
October 6th, 2009 at 8:30 am
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.
October 14th, 2009 at 4:53 am
Exploratory Testing Definition: Extreme (I mean’t breadth and depth) Testing with an exploration mindset
January 24th, 2010 at 7:37 am
I endorse this definition.