Input Coverage > Code Coverage (Series Index)
A short, opinionated series on why expert TDD and property tests still
miss bugs, and how libFuzzer and AFL++ raise input coverage without a lot
of ceremony.
Table of contents
- The Case For Input Coverage
- Property Tests Are Not A Fuzzer
- Minimal Fuzzing Without The Pain
- Enterprise Case 1: Money Parser, Unicode Minus
- Fuzzing The Money Parser With libFuzzer
- Enterprise Case 2: CSV Import CLI, Unbounded Header
- Fuzzing The CSV CLI With AFL++
- Panics Are Not Crashes
- One Function To Fuzz Them All
- From Crash To Test
- Arbitrary Models vs Raw Bytes
- Mocking I/O To Go Faster
- CI, Seeds, And Corpora Hygiene
- AFL++, Original AFL, And When To Care
- Appendix: Varint Shift Bug
- Appendix: Commands, Flags, And Gotchas
- Wrap-Up: An Input Coverage Playbook