google / atheris

Apache License 2.0
1.35k stars 112 forks source link

Show Atheris+Hypothesis #2

Closed Zac-HD closed 3 years ago

Zac-HD commented 3 years ago

Hypothesis, the property-based testing library, has great support for external fuzzers - while making it easy to develop fuzz harnesses. We can also automatically replay and minimize failing examples found by the fuzzer, which is a lovely debugging workflow :grin:

I know that (an old version of) Hypothesis is used internally at Google, and I've been looking forward to this since @inferno-chromium mentioned a Python fuzzer was in the works in https://github.com/google/oss-fuzz/issues/4121. My PhD is about how to upgrade familiar test tools and workflows with the power of fuzzing (among other tricks), and Atheris looks like an awesome upgrade to the Python ecosystem. Thanks for open-sourcing it!

(final note: I haven't fuzzed my example script for long, so Atheris may or may not find ujson bugs if left running)