用途:为 Go 项目提供系统化测试策略,涵盖单元测试、集成测试、基准测试与模糊测试,并帮助提升代码覆盖率。
主要能力:表驱动测试(用 t.Run 组织用例,配合 require/assert 断言)、Mock(基于 testify 的 mock.Mock 定义接口替身并校验调用期望,也可选 gomock)、基准测试(b.ResetTimer、b.ReportAllocs、b.RunParallel 并行基准)、模糊测试(f.Add 提供种子,f.Fuzz 校验如 JSON 往返不报错)。
参数:test_type 必填,取值 unit、integration、benchmark、fuzz;coverage_min 可选,默认 80;mock_lib 可选,默认 testify,也可 gomock。
常用命令:go test ./...;go test -v -race ./...;go test -coverprofile=coverage.out ./...;go tool cover -html=coverage.out -o coverage.html;go test -bench=. -benchmem ./...;go test -fuzz=FuzzJSON -fuzztime=30s ./...。
调用方式:Skill("go-testing")。
排障:测试不稳定多为竞态,可加 -race;测试超时多为死锁,检查 goroutine;Mock 未被调用通常是签名不匹配,核对接口。
限制:资料未提供具体价格、收费、平台支持范围、与其它工具集成方式或效果承诺,暂未提供;示例代码仅作示意,实际使用需按项目情况调整。