Golang中的单元测试与压力测试

Golang中自带了testing包,可以用于单元测试和压力测试。
在自己的包下:
比如,自己写的一个包为logger包,那么单元测试和压力测试在logger包目录下直接进行即可。
如果不在自己的包目录下,那么就应当在go test命令之后,再加上包的相对地址,比如地址为:%GOPATH%/src/aaa/bbb/ccc/ddd/xxx,则使用的地址就为:aaa/bbb/ccc/ddd/xxx
命令就为:

go test aaa/bbb/ccc/ddd/xxx

首先,测试时应将文件名命名为:xxx_test.go文件,要求必须以_test.go结尾。

其次,单元测试的测试函数名称必须为:TestXxx
即:应以Test开头,且Test之后的第一个字母必须大写。
与单元测试相似,压力测试的测试函数名称必须为:BenchmarkXxx

其中,单元测试TestXxx应传入(t *Testing.T)来进行测试。
压力测试BenchmarkXxx应传入(b *Testing.B)来进行测试。因为是压力测试,因此,可以在其中使用for循环,for循环的次数可以使用压力测试自带的次数:b.N即:for i=0;i

最后,在测试时,在本目录下打开终端,
单元测试:使用go test命令即可运行所有的单元测试。使用go test -v命令可查看单元测试的详细信息。
如果只想运行一个指定的单元测试,使用

go test -run TestXxx

命令即可。
压力测试:使用go test -bench . 命令即可运行压力测试。
注意:命令是:

go test -bench .

后面有个点“.”哦
这个点“.”代表运行所有的压力测试,如果只想运行一个压力测试,使用

go test -bench BenchmarkXxx

即可。

你可能感兴趣的:(go语言学习)