Software Testing - Exploratory Testing Techniques and Heuristics
Exploratory Testing is a simultaneous process of learning, test design, and test execution.
Structured exploratory testing goes beyond random testing by using defined techniques and heuristics to systematically discover defects.
Key idea: Think, test, observe, adapt — continuously
Why Structured Exploratory Testing Is Needed
Simple exploratory testing can become:
-
Random
-
Incomplete
-
Tester-dependent
Structured techniques ensure:
-
Better coverage
-
Repeatability
-
Measurable outcomes
-
Higher defect discovery
1. Session-Based Exploratory Testing (SBET)
SBET introduces structure and accountability.
Key elements:
-
Time-boxed sessions (usually 60–120 minutes)
-
Charter (clear mission for the session)
-
Notes and observations
-
Debriefing after session
Example Charter:
“Explore login failures for invalid credentials and session timeout behavior.”
Benefits:
-
Focused exploration
-
Trackable effort
-
Better reporting
2. Heuristic-Based Exploratory Testing
Heuristics are mental shortcuts or rules of thumb that guide where and how to test.
They do not guarantee correctness, but increase defect detection probability.
a) SFDPOT Heuristic
Used to explore data-related risks.
-
Structure
-
Function
-
Data
-
Platform
-
Operations
-
Time
Example:
Test how data behaves over time, during upgrades, or under platform changes.
b) CRUD Heuristic
Used for data-centric systems.
-
Create
-
Read
-
Update
-
Delete
Example:
Verify behavior when deleting data that is referenced elsewhere.
c) Boundary Value Heuristic
Focuses on edge conditions.
-
Minimum values
-
Maximum values
-
Empty inputs
-
Null values
Especially effective in forms, APIs, and validations.
d) Error Guessing Heuristic
Based on tester experience.
-
Common failure points
-
Past defects
-
Developer mistakes
Example:
Testing empty passwords, SQL injection strings, invalid formats.
3. Tour-Based Exploratory Testing
Testing is guided by predefined “tours” of the application.
Common tours:
-
Feature Tour – main features
-
Data Tour – data flow and storage
-
Error Tour – error handling paths
-
Interruption Tour – failures, crashes, restarts
-
Configuration Tour – settings and preferences
Benefit:
Ensures systematic coverage without scripts.
4. Mind Mapping Technique
Uses visual maps to explore test ideas.
Process:
-
Start with feature at center
-
Branch into scenarios
-
Add edge cases dynamically
Advantages:
-
Encourages creative thinking
-
Helps avoid missed areas
-
Useful in early testing phases
5. Risk-Based Exploratory Testing
Exploration focuses on high-risk areas.
Risk factors:
-
New or changed code
-
Complex logic
-
Integration points
-
Business-critical features
Outcome:
Maximum defect discovery in minimal time.
Exploratory Testing vs Scripted Testing
| Aspect | Exploratory Testing | Scripted Testing |
|---|---|---|
| Flexibility | High | Low |
| Learning | Continuous | Minimal |
| Documentation | Lightweight | Detailed |
| Best for | Unknown risks | Known requirements |
Advantages of Structured Exploratory Testing
-
Finds critical and hidden defects
-
Adapts quickly to change
-
Complements automated testing
-
Effective when requirements are unclear
Limitations
-
Depends on tester skill
-
Hard to automate
-
Needs discipline to stay structured