1、一个简单的基准测试程序:测试fmt包的Sprintf函数性能。文件名bsprintf_test.go,_test后缀是必须有的,保存在$GOPATH路径目录下。
2、运行测试。命令行切换到bsprintf_test.go(步骤2新建的go程序)所在目录,运行:go test -bench=.参数-bench是关键,它指明要测试的函数;点字符意思是测试当前所有以Benchmark为前缀函数。
3、测试结果 BenchmarkSprintf-4 10000000 130 ns/op 中 -4 表示GOMAXPROCS(线程数)的值为4,循环体执行了 10000000 次,平均每次耗时 130 纳秒(10-6次方秒);注意 BenchmarkSprintf 函数执行的次数。程序将打印:BenchmarkSprintf-4 1001000010000001000000010000000 139 ns/opPASS
4、go test -bench=. -benchmem;-benchmem 命令行标志参数显示内存的分配数据统计,可以比较优化前后内存的分配情况。
5、testing.B类型支持的所有函数,函数说明请参考godoc。