Skip to main content

Monkey Testing

Monkey testing feeds an application random, unstructured input — random clicks, random text, random gestures — with no test cases, no plan, and no expected outcome, purely to see if the system crashes or misbehaves under chaotic, unpredictable use. It trades precision for pure crash-resistance coverage.

"Dumb" monkey testing generates input with zero awareness of the application's structure or state — genuinely random taps and keystrokes. "Smart" monkey testing has some awareness of valid input types or UI state, making it more likely to reach deeper, meaningfully different parts of the app instead of bouncing off the same login screen repeatedly.

It's popular in mobile testing specifically because tools like Android's own Monkey exist to automate it directly against a running app, generating thousands of random events quickly — a cheap way to find crashes and unhandled exceptions that structured test cases might never think to try.

Monkey Testing — Definition, Example & How It's Used | QA Bash Glossary | QA Bash