Go测试 单元测试|Mock测试|基准测试
单元测试
测试规则:
- 所有测试文件以 _test.go 结尾
- func TestXxx(*testing.T)
- 初始化逻辑放到 TestMain 中
代码覆盖率 一般覆盖率 : 50%~60%,较高覆盖率80%+。保证主流程没问题。 测试分支相互独立、全面覆盖 测试单元粒度足够小,函数单一职责。
Mock测试 快速 Mock 函数
- 为一个函数打桩
- 为一个方法打桩
用一个函数的地址替换另一个函数的地址
基准测试
- 优化代码,需要对当前代码分析
- 内置的测试框架提供了基准测试的能力
ER图:表征现实世界的模型 Topic与Post(话题和帖子) 一对多的关系
- 数据层: 数据 Model,外部数据的增删改查
- 逻辑层: 业务 Entity,处理核心业务逻辑输出
- 视图层: 视图 view,处理和外部的交互逻辑