单元测试
Go 内置测试工具,不需要额外安装测试框架。
测试文件命名规则:
测试函数命名规则:
一、被测试代码
创建 calc.go:
创建 calc_test.go:
运行:
运行当前模块所有测试:
二、测试失败时输出
t.Fatalf 会输出错误并停止当前测试:
t.Errorf 会记录错误,但继续执行当前测试:
初学阶段用 t.Fatalf 就够了。
三、测试包名
测试文件可以和被测代码同包:
也可以使用外部测试包:
同包测试可以访问包内未导出的函数和变量。
外部测试包只能访问导出的内容,更接近真实使用方式。
四、常用测试命令
五、测试建议
- 重要业务函数要写测试。
- 测试名称要表达场景。
- 不要只测成功,也要测失败。
- 测试要稳定,不依赖随机顺序和外部环境。
单元测试不是为了凑覆盖率,而是为了保证核心逻辑改动后仍然正确。

