Fuzz Testing
ELI5 — The Vibe Check
Fuzz Testing throws random, weird, broken data at your code to see what breaks. Empty strings, massive numbers, unicode chaos, null bytes — the fuzzier the input, the more bugs it finds. It's like letting a toddler use your app and seeing what crashes.
Real Talk
Fuzz testing (fuzzing) is an automated technique that generates random, malformed, or unexpected inputs to discover vulnerabilities and crashes. Coverage-guided fuzzers (AFL++, libFuzzer, go-fuzz) mutate inputs to maximize code coverage. Effective at finding memory corruption, parsing bugs, and denial of service vulnerabilities.
When You'll Hear This
"Fuzzing found a buffer overflow in our image parser that code review missed." / "We run go-fuzz against every parser in our codebase — it's caught dozens of edge cases."
Related Terms
Mutation Score
Mutation Score tells you how good your tests REALLY are — not just coverage, but whether they actually catch bugs.
Property-Based Testing
Instead of writing specific test cases (add(2,3)=5), property-based testing generates thousands of random inputs automatically and checks that certain prop...
SAST
SAST scans your source code for security bugs WITHOUT running it.