单元测试
Go语言自带有一个轻量级的测试框架testing和自带的go test命令来实现单元测试和性能测试,testing框架和其他语言中的测试框架类似,可以基于这个框架写针对相应函数的测试用例,也可以基于该框架写相应的压力测试用例。通过测试用例可以解决如下问题:
- 确保每个函数是可运行,并且允许结果是正确的
- 确保写出来的代码性能是好的
- 单元测试能及时的发现程序设计或实现的逻辑错误,使问题及早暴露,便于问题的定位解决,而性能测试的终点在于发现程序设计上的一些问题,让程序能够在高并发的情况下还能保持稳定。
测试注意点
- 测试文件一定要以_test.go结尾命名,不然找不到文件
- 测试用例函数必须以Test开头,一般来说就是Test+被测试的函数名
- 测试函数的形参必须是
t *testing.T
- Benchmark
基础测试的函数命名方式 func BenchmarkXxx(b *testing.B)
1 | func TestXXXX(t *testing.T) { |
命令
1 | 禁用缓存 |