Skip to main content

HypoFuzz

Adaptive fuzzing of Hypothesis tests.

Property-based approaches help you to write better tests which find more bugs, but don't have great ways to exchange much more CPU time for more bugs. The goal of this project is to bring togther the best parts of fuzzing and PBT.

Motivation

You can run a traditional fuzzer like AFL on Hypothesis tests to get basic coverage guidance. This works OK, but there's a lot of performance overhead. Installing, configuring, and connecting all the parts is a pain, and because it assumes one fuzz target per core you probably can't scale up far enough to fuzz your whole test suite.

Alternatively, you can just run Hypothesis with a large max_examples setting. This also works pretty well, but doesn't get the benefits of coverage guidance and you have to guess how long it'll take to run the tests - each gets the same budget.

HypoFuzz solves all of these problems, and more!

Features

  • Interleave execution of many test functions
  • Prioritise functions where we expect to make progress
  • Coverage-guided exploration of your system-under-test
  • Seamless python-native and CLI integrations (replaces the pytest command)

Read more about HypoFuzz at https://hypofuzz.com/docs/, including the changelog.

Release files for hypofuzz 25.11.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hypofuzz 25.11.1
File Size Uploaded
hypofuzz-25.11.1.tar.gz 325.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hypofuzz 25.11.1
File Interpreter ABI Platform
hypofuzz-25.11.1-py3-none-any.whl Python 3 none any Details

Total release size: 2.3 MB

Release files / hypofuzz-25.11.1.tar.gz

Download URL hypofuzz-25.11.1.tar.gz
Size 325.6 kB
Tags Source
SHA-256 checksum
How to use checksums
717a12481378e77c3fd7a44f2c03e17252591ed7e7e5fd2f714d33d7ad1cface
BLAKE2b-256 checksum
How to use checksums
9e594d1f496062e736ad389f5a4deefa2771eaff9ed4f0f431e18ba8c36c6b76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release files / hypofuzz-25.11.1-py3-none-any.whl

Download URL hypofuzz-25.11.1-py3-none-any.whl
Size 2.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
b68b924b187bd4bab4e11ff54126d20129938fca6c35d293a68b11fe9e96bb2a
BLAKE2b-256 checksum
How to use checksums
e6aba3de6092e8cdb2c87e307b49d22dd88026189942587a17ac1b1e7f31c82c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release history Release notifications | RSS feed

This release

25.11.1 This release

2 release files

25.9.2

2 release files

25.8.2

2 release files

25.7.2

2 release files

25.6.4

2 release files

25.6.3

2 release files

25.6.2

2 release files

25.6.1

2 release files

25.5.1

2 release files

25.4.9

2 release files

25.4.8

2 release files

25.4.7

2 release files

25.4.6

2 release files

25.4.5

2 release files

25.4.4

2 release files

25.4.3

2 release files

25.4.2

2 release files

25.4.1

2 release files

25.3.3

2 release files

25.3.2

2 release files

25.2.5

2 release files

25.2.4

2 release files

25.2.3

2 release files

25.1.6

2 release files

25.1.5

2 release files

25.1.4

2 release files

25.1.3

2 release files

25.1.2

2 release files

24.9.1

2 release files

24.2.3

2 release files

23.5.3

2 release files

23.5.2

2 release files

23.5.1

2 release files

23.4.1

2 release files

22.7.1

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page