According to Wikipedia, "Exploratory testing is an
approach to software testing that is concisely described as simultaneous
learning, test design and test execution". It is further stated that,
"Cem Kaner, who coined the term in 1983, now defines exploratory testing
as a style of software testing that emphasizes the personal freedom and
responsibility of the individual tester to continually optimize the quality of
his/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".
Exploratory testing has got an important role in the
industry which has grown much mature in the field of software testing. Although
all testing to an extent is exploratory but there are various reasons under
which exploratory testing becomes a requirement.
In my view, time constraint or short deadlines are
important factors giving rise to the need of performing exploratory testing. It
is due to short deadline that testers are asked by the management to perform
the exploratory testing, as there is not much time to learn the application.
Hiring a testing resource at a critical time may also end up
with the resource performing exploratory testing. If hire a new testing
resource at a critical time in project, he is usually asked to start with
testing the application as soon as he can. So, the tester starts with exploratory
testing while also learning the application (by using the application or by reading
the learning material).
Exploratory testing is also performed when there is an incomplete
or no documentation available. Documentation may include the requirement
specifications, user guides or any other learning material.
These are few common reasons and all these make exploratory
testing a challenge for the software testers. The challenge for the software
testing companies is to select the right person for this job.
Different testers have different skill set and are strong in
different domains, platforms and tools. In order to select the right person for
exploratory testing, any company should focus on various factors.
These factors may include the previous experience of a software tester. For example, it may not turn out to be a success story with
one hires a fresh resource and asks him to perform exploratory testing of a
large financial application, as the fresh resource may have difficulty in
learning the application along with testing of it at same time. In comparison, if a company hires a resource with
previous experience of testing financial applications then this resource can
perform much better. Similarly, platforms and tools required to test should
also be considered. Selecting the tester who has best match to the required domain,
platform and tools, does improve the quality of exploratory testing.
This article does not cover all aspects of exploratory testing.
Reference:
http://en.wikipedia.org/wiki/Exploratory_testing