当前位置:首页 >专题 >Go 原生 Fuzzing 质量工程专题
Go 原生 Fuzzing 质量工程
Go 原生 Fuzzing 质量工程专题
从 fuzz target、种子语料到安全回归
单元测试验证的是开发者想到的输入,而 Fuzzing 专门寻找没有想到的输入。本专题以 Go 官方 testing.F、覆盖率引导模糊测试和安全文档为主线,精选 17Golang 真实文章,带你从最小 fuzz target 开始,理解语料、失败输入、最小化、测试缓存与持续回归,最后把模糊测试接入 API、解析器和安全质量门禁。
常见问题
把随机探索变成可解释、可复现的工程资产
Go Fuzzing 和普通单元测试有什么区别?
单元测试通常由开发者明确给出输入与期望结果;Fuzzing 会根据种子和覆盖率反馈持续生成输入,重点寻找 panic、错误状态和未预期行为。两者应组合使用,失败的 fuzz 输入还可以沉淀为普通回归测试。
Fuzz target 应该测试哪些函数?
优先选择解析器、编码解码、协议边界、鉴权输入和对外 API 校验等处理不可信输入的函数,并保证输入类型简单、断言稳定、执行成本可控。
发现失败输入后应该怎么处理?
先用 go test -run 复现并定位问题,修复后保留 testdata/fuzz/FuzzXxx 下的失败输入,让后续普通 go test 默认执行它,避免同一缺陷再次出现。
Fuzzing 适合在 CI 中一直运行吗?
CI 中通常运行固定时长或固定资源预算的 fuzz job,并缓存语料和上传失败样本;日常提交保持快速 seed 回归,夜间或专用 runner 承担更长的探索任务。
相关专题
继续查看相近方向内容
查看更多
最新文章
-
- CNCF 项目元数据标准化将怎样影响生态目录维护
- 1分钟前 208浏览
-
- runtime/secret 与普通 byte 切片如何划分使用边界
- 5分钟前 137浏览
-
- 量化模型的校准数据应该怎样覆盖真实输入
- 12分钟前 372浏览
-
- secret 值转成 string 后保护能力为什么会丢失
- 16分钟前 211浏览
-
- Docker Desktop 如何查看并限制容器磁盘占用
- 22分钟前 136浏览
-
- 用 runtime/secret 降低内存转储中的密钥暴露
- 28分钟前 156浏览
-
- Redis Functions 如何在主从切换后保持脚本可用
- 32分钟前 154浏览
-
- runtime/secret 为什么不能替代完整的密钥管理系统
- 37分钟前 290浏览

