QASymphony / Blog / What Exploratory Testing is NOT – White Board Friday
What Exploratory Testing is NOT – White Board Friday
Happy White Board Friday! Today we will continue discussing exploratory testing, something people have many misconceptions about.
Hey everyone, and welcome to Whiteboard Friday. Today we’re going to be talking about four principles that exploratory testing is not.
The first thing is that people like to think of exploratory testing as something that’s not structured. When we start talking about exploratory testing, sometimes there’s a lot of push back, because they immediately think that it’s more along the lines of ad hoc testing, which is very chaotic, it’s not structured at all, and it’s almost throw-away work. But exploratory testing, if you want to have a successful session in place, there’s some parameters you want to put around that to structure that test session. Some of these parameters, the first thing is that you want to have a goal of your exploration in mind. So you’re simply just not going off and testing random areas of your application, you really are pinpointing areas to go off and navigate to and actually test against.
The other thing is that you want to log all the activity you perform. You don’t want to just go off and test something and forget about all the stuff you’ve done. That would be more of an ad hoc way of doing it. You want to be able to have a log of the activities that have been performed. And the last thing is that you want to take on a persona when you are actually going through and testing that application. For example, if I want to test something as an admin, I may be using it a lot differently than if I was an end-user of that application.
The next thing is that people like to think that exploratory testing is the only form of testing, and that’s also simply not the case. We see that there’s lots of testing in terms of unit testing, beta testing, regression testing, all different types of testing that you can do in your application. We see that exploratory testing really complements and feeds your automated and manual testing. You see here that you can get greater depth in your testing by using exploratory testing and also identify gaps in the coverage that you think may have had.
We’re all about trying to have coverage. Test coverage is something we always keep talking about. “What’s my test coverage?” right? Exploratory testing can help out with that. One of the ways is that as soon as a brand new feature has been delivered to test against, you can deploy some exploratory testing to make sure if we think that writing manual scripts and automated scripts makes sense for this feature. And then after manual testing and automated regression has been complete, you want to also use exploratory testing at the end to figure out, “Okay, have we really done all the testing we need to?” and, “Let’s just go ahead and just make sure all the aspects have been tested before we deploy this into production.” Right?
The third thing is that people like to think of exploratory testing as just throw away work. Again, that’s not the case at all, either. Michael Bolton had this great quote on just managing testing in general. He said that any testing approach is manageable when you choose to manage it. A lot of times, people will think that, “I don’t want to do exploratory testing, because I can’t wrap my head around how to manage that actual testing, to report on it, or to show what we’ve all done during that actual testing.” That just may be because you maybe haven’t invested time in managing it, but it is something you can manage.
We’ve got some helpful ways to do that. One of the ways is to really standardize how you’re creating your charters, your sessions, or maybe the template that you want to reuse across your organization that currently shows all the exploratory testing that you’re doing, and then notes and pinpoints that you need to include during that test session. Also, you can debrief with your team and share all the data and the logging information that you have so that that data transfer knowledge is something that is done after all your exploratory testing. So you easily can manage it, don’t always think that just because someone says that you can’t manage it, that you can’t. You can definitely manage that.
The last thing is that people like to think of exploratory testing, especially if they’re in a regulated industry, they think that there’s no way that they’ll be able to do any type of exploratory testing. That’s also simply not the case. Exploratory testing is used in regulated industries, government industries, industries that are regulated, right? We’ve got a great quote from one of the thought leaders that are out there in this space, Anne-Marie Charrett. She said this, she was like, “Do you want a reason to adopt exploratory testing in your organization?” She goes on to say, “If it’s good enough for NASA, then it’s good enough for all of us.” So if NASA can do it, again, a government regulated industry, if they can employ this type of testing in their overall STLC testing, then any industry can also use exploratory testing as well.
So this is my Whiteboard Friday. Thank you for joining us, we’ll see you next time.