Zac-HD / hypofuzz

Adaptive fuzzing of Hypothesis tests
https://hypofuzz.com/docs
GNU Affero General Public License v3.0
82 stars 3 forks source link

Recognize, and stop fuzzing, when a test is exhausted #12

Open Zac-HD opened 2 years ago

Zac-HD commented 2 years ago

Hypothesis can detect when a strategy is exhausted, i.e. when all possible values have been tested, and will stop early in that case. For unit-testing-like workloads this typically only happens for simple strategies such as st.booleans() or small ranges of st.integers(), but in a long fuzzing run it could conceivably happen for considerably larger sets of values.

While not a high priority, it would be nice to implement this for HypoFuzz if it's possible to do so without consuming too much memory.

See: https://mboehme.github.io/paper/ICSE23.Effectiveness.pdf