当前位置:首页 >专题 >Go 测试证据与 CI 回归工程实践专题
Go 测试证据与 CI 回归
Go 测试证据与 CI 回归工程实践专题
从测试隔离、产物留存到可复现回归定位
测试通过只是一个瞬间,真正能支撑交付的是可重复的测试环境、清晰的隔离边界和可回看的失败证据。本专题围绕 Go testing、testing.T.ArtifactDir、httptest、并行测试、环境变量、Fuzzing 语料和 Git bisect,串起从本地测试到 CI 回归定位的完整工程闭环。
官方入口与测试工具文档
先建立 Go 测试 API、命令和 CI 产物的可信基线
官方
Go 官方网站
Go 官方主页,汇总安装、教程、标准库文档、博客和工具链入口。
官方
Go 官方 GitHub 仓库
Go 源码、发行说明、问题追踪和测试实现的公开仓库。
官方
testing 包 API 文档
testing.T、B、F、Cleanup、Setenv、Parallel 和 ArtifactDir 的标准库 API 参考。
官方
testing.T.ArtifactDir API
Go 1.26 为测试、基准和 fuzz 场景提供的稳定产物目录入口。
官方
go test 官方命令文档
go test 的包发现、运行参数、缓存、覆盖率和测试输出说明。
官方
Go 官方测试入门教程
从 _test.go、TestXxx 到 go test 的官方快速开始。
官方
GitHub Actions Go 工作流文档
在 GitHub Actions 中设置 Go 版本、依赖缓存和测试步骤的官方指南。
官方
Go Fuzzing 官方文档
介绍 FuzzXxx、种子语料、失败输入和持续模糊测试的官方安全指南。
官方
Go httptest API 文档
用于构建本地 HTTP Server、Recorder 和可控请求环境的标准库 API。
常见问题
回答测试证据和 CI 回归落地时最容易混淆的四个问题
testing.T.ArtifactDir 和 testdata/fuzz 应该怎么分工?
ArtifactDir 适合运行过程中生成的日志、快照、诊断和临时证据;testdata/fuzz 适合需要随代码提交、长期稳定复现的 fuzz 语料。
为什么本地通过而 CI 偶尔失败?
优先核对测试缓存、并行共享状态、进程级环境变量、时钟和随机种子,再把失败日志、版本和产物目录固定归档。
Go CI 中应该每次都运行 race 和 fuzz 吗?
普通提交可运行快速单测和短时 race;fuzz 更适合定时或专项流水线,并把发现的稳定失败输入沉淀为普通回归测试。
git bisect 的测试脚本什么时候应该返回 125?
当当前提交因缺依赖、缺生成文件、无法构建或环境不完整而无法判断好坏时返回 125,让 Git 跳过该提交;确定复现回归才返回 bad。
相关专题
继续查看相近方向内容
查看更多
最新文章
-
- Go Benchmark报告allocs/op并定位临时对象来源的方法
- 7小时前 409浏览
-
- Redis Sentinel故障转移期间客户端重连的配置方法
- 8小时前 108浏览
-
- 商汤Seko能做AI短剧工具吗?功能范围和适用场景
- 8小时前 493浏览
-
- Go MultiWriter第一个Writer失败后其他Writer未完成的处理边界
- 8小时前 195浏览
-
- MySQL 复合索引跳过最左列时的访问边界
- 8小时前 244浏览
-
- Go fuzz测试把崩溃输入写入回归语料的流程
- 8小时前 195浏览
-
- 商汤Seko批量产出怎么做抽样验收?首件全检、过程抽检与批尾复核
- 8小时前 337浏览
-
- 紫灰玻璃花房手机壁纸用半透明层次适配深色模式
- 8小时前 369浏览

