Exploratory testing is an approach that can be taken by a domain experienced tester when there are less documentation/requirements available and there is a limited amount of time for testing. Exploratory testing is not ad hoc testing but a considerate approach to ad hoc testing as documentation is prepared during testing. Using this approach, a tester can create a test charter, set test targets and define a test closure. Business users can be paired up with a tester for testing.
Define Test Targets - Primary and Secondary targets can be set prior to test execution.
• Primary Target – Testing can be focused on the main features and high-risk areas.
• Secondary Target – Other features to test such as connectivity to interfaces, verifying the responses, boundary values, decision coverage etc.
Prior to test execution, a tester can think about - test environment, test data, the interface of the product and if there is a need for an additional tester.
Prepare a test checklist and cover all the areas that will be explored whilst testing and include any relevant information e.g. priority. Get sign off from the client before you start the test execution.
Time boxing can be very effective during the execution of exploratory testing. Use time boxing to keep focused on the area under test. Ideal uninterrupted time for a time boxed session is between 90 minutes to 2 hours. Record the test data being used and the steps to reproduce a defect.
Before the execution, check if everything is ready for testing such as the test environment and any relevant equipment which will be needed during execution e.g. printer. If the test environment is not ready or there are connectivity issues then report to your manager and schedule a new test session. Do not waste your testing time trying to fix that issue as we are time boxed.
• All charters have been completed
• No new interesting defects found – low severity bugs
• Need to decide on the above two points prior to testing
Execute your tests based on pre-defined targets and test charter. Start with the primary targets and focus on the high severity bugs. Do not lose your focus whilst testing your target as we testers can get distracted by bugs we find and end up testing secondary targets.
Prepare test session sheets to record testing notes during execution. Create notes for the steps to reproduce a bug and record the test data being used.
Sometimes it can be hard to reproduce a bug if the test data and steps to reproduce are not recorded properly.
Get sign off from the client on the test execution sheet and prepare a defect report.
• A business user is paired up with a tester.
• Use test specification technique e.g. boundary values and decision tables.
• Record your test session.
• Test towards your test targets.
• Keep notes of test data used.
• Keep notes of defects identified.
• Raise defects at the end of a test session when all charters are completed
• If testing is finished before time:
• If you did not achieve your test target on time:
*Image from https://khurrambhattidotcom.files.wordpress.com/2015/10/treasure-map-153425_12801.png