Skip to content

Exploratory Testing

What is Exploratory Testing?

Exploratory Testing is a type of software testing where Test cases are not created in advance but testers check system on the fly. They may note down ideas about what to test before test execution. The focus of exploratory testing is more on testing as a “thinking” activity.

Exploratory Testing is all about discovery, investigation, and curiosity. It is a simultaneous process in which testers go through the software of their own accord to get a sense of the quality of the user experience it provides.

Why Exploratory Testing?

Under scripted testing, you design test cases first and later proceed with test execution. On the contrary, exploratory testing is a simultaneous process of test design and test execution all done at the same time.

Scripted Test Execution is usually a non-thinking activity where testers execute the test steps and compare the actual results with expected results. Such test execution activity should be automated where possible, as does not require many cognitive skills.

How we execute Exploratory Tests

Guidelines to approach Exploratory Testing follow:

1. Classify Defects/Bugs

  • Categorise commonly detected faults and identify their root cause
  • Identify risks that must be covered

2. Create a Test Charter

The Test Charter should include: - Scope of testing - what to test / how it can be tested / what bugs to look out for - Test ideas as a starting point for exploratory testing

3. Time Box

  • Suggested to time box the session around 90minutes, working in pairs
  • The session must be without interruptions
  • Can be extended or reduced, depending on test progression

4. Review Results

  • Evaluate the defects
  • Note down any learnings

5. Debriefing

  • Communicate results
  • Identify any further testing required?

Best Practices

Before the Exploratory Test session:

  • The mission of testing must be clear
  • Note ideas on what needs to be tested and why

During the Exploratory Test session:

  • Engineer can branch out their ideas but never stray from the mission
  • Keep track of any questions and issues raised during exploratory testing session
  • Preferred to pair for more effective

Following the Exploratory Test session:

Document and monitor the following: - Risks - What must be covered - Test Execution Log - Consider recording the test session

Disadvantages of Exploratory Testing

Some disadvantages of Exploratory testing are: - Can be limited by domain knowledge - Minimise risk by Pairing - Replication of failure/test results can be difficult - Minimise risk by Pairing / Recording session - Don’t know when to stop - MAddress by timeboxing the session

Tooling

Here are the tools we use to support Exploratory Testing - Test Charters – TestRail - Defect Management – Azure DevOps

References