SuperAPI AI 工具集

golang-testing

测试与质量

查看项目

更新于 10-16 06:51

技能介绍

用途:为 Go 项目添加、修复、设计或审查测试,先检查已有 _test.go 文件并匹配本地断言、伪造、夹具与包风格。

主要能力:优先使用标准工具,包括表驱动测试、子测试、t.Helper、t.Cleanup、t.TempDir、httptest、iotest、fstest、基准测试与模糊测试。在最低有用边界添加测试,仅当行为依赖外部系统或装配时使用集成测试。覆盖公共行为、边界情况、错误分类、取消与超时、以及相关并发安全。接口较小时优先使用伪造或桩,避免为尚不存在的接口生成 mock。

审查流程:判断覆盖率前先检查变更代码及邻近 _test.go 文件;检查是否覆盖公共行为、边界、错误分类、取消与超时、并发安全和集成边界;标记脆弱测试,如 sleep、真实网络、顺序依赖、共享状态、宽泛 mock、隐藏夹具或过度测试内部实现;建议最小有用补充,并说明应为单元、集成、模糊、基准还是竞态检查。完整发现优先的审查可配合 golang-code-audit 使用。

用法与限制:先运行聚焦测试,再运行 go test ./...;并发或共享内存变更使用 -race。保持测试确定性:无真实时间 sleep、除显式集成门控外不访问网络、不依赖顺序。需要引入伪造或契约测试接缝时,可配合 golang-architecture-patterns 技能。可参考 references/testing.md 获取表、模糊、基准、竞态、覆盖率与集成测试模式。其他具体细节暂未提供。