咱们能够为Go程序编写三类测试,即:功能测试(test)、基准测试(benchmark),也称性能测试(example)shell
package demo import ( "fmt" "testing" ) //功能测试 func TestMethod(t *testing.T) { fmt.Println("function test") } //基准测试 func BenchmarkMethod(b *testing.B) { fmt.Println("benchmark test") } //性能测试 func Examplemethod(t *testing.T) { fmt.Println("example test") } func Method(t *testing.T) { fmt.Println("Method") }
go test 命令,会自动读取源码目录下面名为 *_test.go 的文件,生成并运行测试用的可执行文件。windows
运行go test 命令会运行符合规定的测试代码;缓存
go test命令就会针对每一个被测代码包,依次地进行构建、执行包中符合要求的测试函数,清理临时文件,打印测试结果。函数
命令:性能
go test demo #go test [目录]
这里是否读缓存不会影响咱们的测试结果,若是想清初缓存能够执行: go clean -cache测试
#格式:go test -bench=. -run=^$ [目录] go test -bench=. -run=^$ demo
-bench= 指要进行性能测试code
. 须要执行任意名称的性能测试函数(符合规则)blog
-run=^$ 须要执行哪些功能的测试函数源码
^$ 只执行名称为空的功能测试函数(不执行任何功能函数)io
输出的内容:
function test benchmark test goos: windows goarch: amd64 pkg: demo BenchmarkMethod-8 benchmark test benchmark test benchmark test benchmark test benchmark test 2000000000 0.00 ns/op PASS ok demo 0.262s
**** 码字不易若是对你有帮助请给个关注****
**** 爱技术爱生活 QQ群: 894109590****