当前位置:首页 >专题 >Go 测试与质量工程实战专题

Go 测试与质量工程实战专题
Go 测试与质量工程

Go 测试与质量工程实战专题

从 go test、基准测试到竞态检测与原生模糊测试
Go 把单元测试、基准测试、覆盖率、竞态检测和原生模糊测试都纳入了工具链,但真正稳定的工程质量来自可重复的测试分层、清晰的测试数据和持续回归。本专题从官方入口开始,依次覆盖 go test 基础、业务与数据库 Mock、性能基准、并发竞态和 Fuzzing,让开发者把“能跑”推进到“可验证、可回归”。

站内测试实战文章

按基础、隔离依赖、性能验证和命令排查顺序练习

一文详解Go语言单元测试的原理与使用
文章

一文详解Go语言单元测试的原理与使用

介绍 Go 单元测试的基本原理、组织方式和运行思路。
Go语言自带测试库testing使用教程
文章

Go语言自带测试库testing使用教程

围绕 testing 标准库介绍单元测试、性能测试等常见能力。
Go语言单元测试基础从入门到放弃
文章

Go语言单元测试基础从入门到放弃

从 go test、表格驱动测试、回归测试和常用断言工具讲起。
Go语言单元测试模拟服务请求和接口返回
文章

Go语言单元测试模拟服务请求和接口返回

使用 httptest 等工具模拟服务请求和接口返回。
Go单元测试对数据库CRUD进行Mock测试
文章

Go单元测试对数据库CRUD进行Mock测试

结合 go-sqlmock 和 miniredis 对 MySQL、Redis CRUD 进行 Mock 测试。
Golang 单元测试和基准测试实例详解
文章

Golang 单元测试和基准测试实例详解

通过实例说明 Go 单元测试与基准测试的写法和运行方式。
go test命令(Go语言测试命令)完全攻略
文章

go test命令(Go语言测试命令)完全攻略

系统梳理 go test 命令、测试文件约定和常用运行方式。
关于golangtest缓存问题
文章

关于golangtest缓存问题

说明 Go 测试缓存导致结果重复时的排查与处理思路。

常见问题

回答 Go 测试质量落地时最容易混淆的四个问题

Go 项目应该先写单元测试还是先做集成测试?

通常先用快速、隔离的单元测试覆盖核心规则,再为跨进程、数据库和真实协议补充少量高价值集成测试;两者应通过清晰命名和 CI 阶段分层运行。

覆盖率达到多少才算 Go 项目质量合格?

没有适用于所有项目的单一阈值;应结合关键业务路径、错误分支、变更风险和覆盖率趋势判断,并用 go test -cover 找到遗漏,而不是追逐数字。

什么时候应该运行 go test -race?

并发密集的包、HTTP 服务、消息消费和集成测试应在 CI 或专项回归中定期运行 -race;它会增加 CPU 和内存开销,因此不必对所有生产构建默认开启。

Go 原生 Fuzzing 发现的失败输入怎么处理?

先复现并定位不变量或边界条件,再把稳定复现的输入保留为种子语料或回归测试;持续 fuzzing 需要限制资源、记录版本并定期清理无价值语料。

微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码