我想在我的应用程序中运行基准测试。那可能吗?如果是的话,我该怎么办?我一直在四处寻找,但到目前为止还没有看到任何迹象。
答案 0 :(得分:4)
您可以在不运行go test
的情况下使用testing.Benchmark。
package main
import (
"fmt"
"testing"
)
func Fib(n int) int {
if n <= 0 {
return 0
} else if n == 1 {
return 1
}
return Fib(n-1) + Fib(n-2)
}
func main() {
res := testing.Benchmark(func(b *testing.B) {
for n := 0; n < b.N; n++ {
Fib(10)
}
})
fmt.Println(res)
// (on my mac)
// 3000000 454 ns/op
}