Definition of Ad-Hoc testing
Ad hoc testing is usually done without having any structured plan, testcase, documentation, etc. It depends on the intention of the tester and the purpose of the test.
“Exploring the application like a real user while trying to break it.”
Example
Suppose you are testing a Login page.
Scripted Test Case
- Enter valid username
- Enter valid password
- Click Login
- Verify Dashboard opens
Ad Hoc Testing
You may try:
- Paste 5000 characters into username.
- Enter only spaces.
- Use emojis 😀 in username.
- Click Login 20 times quickly.
- Disconnect the internet after clicking Login.
- Refresh the browser while logging in.
- Press the Back button after logging in.
- Open multiple tabs and log in simultaneously.
These tests were not planned, but they often reveal real bugs.
Why is Ad Hoc Testing Important?
It helps to find Unexpected crashes, UI glitches, Performance issues, Security weaknesses, Data corruption, Missing validations, Race conditions, Workflow issues
Many production bugs are discovered through ad hoc testing
1. Buddy Testing
Developer and tester work together.
Example:
Developer fixes a bug.
Tester immediately tries unusual scenarios around the fix.
2. Pair Testing
Two testers (or tester + business analyst) test together.
One performs actions while the other suggests ideas and records observations.
3. Monkey Testing
Randomly click buttons and enter unexpected inputs.
Goal:
Break the application.
Example:
- Random navigation
- Random data
- Rapid clicking