Exploratory testing is one of the testing methodologies which have recently gained popularity. The methodology of the exploratory testing is closely related with the concept of simultaneous learning, designing the test and executing it. Thus, we can say that in exploratory testing 3 processes go hand in hand.
– Exploratory testing was introduced in to the world of software testing in the year of 1983 by Cem Kaner who defines the methodology as a way of testing the software involving emphasizing on the personal freedom.
– It also emphasizes on an individual’s responsibility for continually optimizing the quality of the work by inducing learning with working, test designing, test execution, interpretation and so on.
– Here, working and learning are considered to be two mutually supportive activities which run parallel to each other throughout the development cycle.
– When a tester follows the exploratory testing, he gets a chance to learn new things which are a resultant of the experience and creativity.
– He gets new ideas for generating new better tests to run.
– Exploratory testing was always considered to be one of the black box testing techniques but eventually it was understood that it is such a technique that can be applied to either white box category or black box category in any stage of the software testing life cycle depending on how it is being performed by the tester.
– Neither the testing technique nor the item being tested is the key to exploratory testing rather it is the cognitive engagement and ability to manage time of the tester that is the key.
– Since its advent, the exploratory testing has been known to be performed by the skilled testers only.
– In the year of 1990, the ad-hoc testing was considered to be a symbol of sloppiness and carelessness.
– As a result of this, a team of methodologists emerged calling themselves ‘context driven school’ who replaced the term ad-hoc testing with exploratory testing.
– Eventually, the exploratory testing came to be recognized as any other intellectual activity.
– The exploratory testing works with the purpose of finding out how actually the software system or application works and raise questions about how it handles all sorts cases with varying difficulty levels.
– However, the quality of testing like in any other case is dependent up on the skills of the testers of creating test cases and tracking defects.
– The more is known to the tester regarding the software system or application and testing methods and tools, the efficient the testing will be.
– For further explanation a comparison can be made with the scripted testing which involves designing of the test cases in advance.
– It also focuses up on the individual steps as well as the expected results.
– These tests are performed by a tester later during the testing process and the expected result is compared with the actual result.
– But when the exploratory testing is being followed, expectations are always kept open.
– Some results can either be predicted or expected but there are others with which you can’t do either of these things.
– The product and its behavior is configured, operated, observed and evaluated by the tester in various ways.
– The result is critically investigated and any information relating to bug which threatens the quality of testing and value of the product is reported.
– If you see the actual scenario, you will find that the software testing is a mix of the scripted testing and exploratory testing but the tendency is towards one of them based up on the context.
– However, the exploratory testing has always considered being a way of thinking about testing rather than just a methodology.
– Tools used for the exploratory testing include screen capture, video tools, perl-clip and so on.