Exploratory testing (ET), or testing when learning, design and execution are concurrent, is not the random and ineffective approach as once believed. ET is still a new concept and hasn’t been wholly embraced by the industry, but surprisingly it is one of the most widely used approaches in software testing. The problem is that very few people take it seriously and its real value is often misunderstood.

Exploratory testing has a highly situational structure as opposed to a planned set of requirements that is often favored. There are lots of myths (well, I will refer to them as myths) out there justifying that scripted testing (ST) and only scripted testing is the ideal and that exploratory testing is becoming obsolete. I am a firm believer that ET integrated with your existing approaches fits in nicely with the other tests testers perform. When we are faced with software with unknown requirements or software in an unstable condition, exploratory testing is a cost-effective approach and may uncover those vulnerabilities that traditional, pre-planned tests tend to miss.

As companies begin to seek more agile methods of developing software, the acceptance of exploratory testing will begin to increase. Until the acceptance rate of the value is better recognized questions such as when it should be applied and how to choose between ET and ST still need to be warranted. Unlike a scripted testing approach, exploratory testing follows an intuitive plan of observing, evaluating, and teaching. Testers usually have a general test plan in their mind as well as a fairly good understanding of the application and the business domain. ET emphasives flexibility and creativity as testers adapt to interacting test tasks.

It is important to realize that exploratory testing is not against the idea of scripting; in fact the most effective test strategies implement a hybrid ET/ST approach. There are many factors to consider when determining which approach to implement. Factors such as how well the tester understands the operation and complexity of a system, the skill sets of the team, and the degree of acceptable risk are important to assess when deciding which approach will be most conducive.

With the appropriate blend of both ET and ST the chances of successfully spotting most of the risks will be improved. The power of how effective employing exploratory testing will be is really based on the knowledge, experience and intuition of the individual tester and the variability among the test team as a whole.