基于属性的适应性模糊测试
项目描述
HypoFuzz
Hypothesis测试的适应性模糊。
基于属性的测试方法可以帮助您编写更好的测试,以找到更多错误,但没有很好的方法来为更多的错误交换更多的CPU时间。本项目的目标是结合模糊测试和PBT的最佳部分。
动机
您可以在Hypothesis测试上运行传统的模糊器(如AFL)以获取基本的覆盖率指导。这效果不错,但性能开销很大。安装、配置和连接所有部件很痛苦,因为它假设每个核心一个模糊目标,您可能无法扩展到足够大,以模糊整个测试套件。
或者,您可以直接使用Hypothesis运行一个大的max_examples
设置。这也很好用,但无法获得覆盖率指导的好处,您必须猜测测试运行的时间 - 每个测试都获得相同的预算。
HypoFuzz解决了所有这些问题,并更多!
功能
- 交织多个测试函数的执行
- 优先考虑我们预期会有所进步的函数
- 对您的系统进行覆盖率指导的探索
- 无缝集成 Python 原生和 CLI(替代
pytest
命令) - 使用 PyTrace 进行基于 Web 的时间旅行调试(如果
pip install hypofuzz[pytrace]
则自动启用)
在 https://hypofuzz.com/docs/ 了解 HypoFuzz 的更多信息,包括 变更日志。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
hypofuzz-24.9.1.tar.gz (39.1 kB 查看哈希值)
构建分发
hypofuzz-24.9.1-py3-none-any.whl (38.1 kB 查看哈希值)
关闭
hypofuzz-24.9.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cc767b60fc02da882b79ef5bbda34e66ff41673b7e6794dd1f235bfa015027fb |
|
MD5 | 142f43c3e532c2c08ccd0b407f25b666 |
|
BLAKE2b-256 | 5f46ba844936e378ed233414d63b48dc4d732ead38a879ce9b7c534af5556058 |
关闭
hypofuzz-24.9.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 432240977a192f76deb3f9b77014b6ac7b02daafa521ac0386c8dd41c699ca33 |
|
MD5 | 1f1f68b5a575e6fb39b4ccb46d07ceb7 |
|
BLAKE2b-256 | e5e28e87b864bad493d45476a1706b6afec7911099e1de1b16b7cc4207464125 |