原文:https://blog.csdn.net/qq_34796981/article/details/107964779
--------------------------
格式
文件名必须以_test结尾。
方法名必须已Benchmark开头。
测试方法需要使用 *testing.B。
命令行参数
输入参数
go test -v -bench=. -benchmem -count=3
1
参数含义
1.-bench 后面代表为需要测试的方法。如果是"."则代表执行所有的Benchmark开头的方法。
2.-benchmem 则代表输出参数中会展示内存的消耗和申请次数。
3,-count 代表测试次数
1
2
3
输出参数
Benchmark1-8 12412908 96.4 ns/op 16 B/op 2 allocs/op
Benchmark1-8 12856522 94.8 ns/op 16 B/op 2 allocs/op
Benchmark1-8 12992362 92.8 ns/op 16 B/op 2 allocs/op
1
2
3
输出参数含义
ns/op 代表每次执行逻辑消耗的时间
B/op 代表每次执行逻辑消耗的内存
allocs/op代表每次执行逻辑申请内存的次数
样例-demo
package test
import (
"fmt"
"testing"
)
func Benchmark1(b *testing.B) {
//b.ResetTimer() 可以指定开始计时的位置
for i:=0;i<b.N ;i++ {
fmt.Sprintf("%d",i)
}
//b.StopTimer() 计时的结束的位置
}
————————————————
版权声明:本文为CSDN博主「我爱吻篮板」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_34796981/article/details/107964779