跳转到主要内容

【Go语言测试】如何在 Go 中编写基准测试

这篇文章继续了我几周前开始的测试包系列。您可以在此处阅读上一篇关于编写表驱动测试的文章。您可以在 https://github.com/davecheney/fib 存储库中找到下面提到的代码。

介绍


Go 测试包包含一个基准测试工具,可用于检查 Go 代码的性能。这篇文章解释了如何使用测试包来编写一个简单的基准测试。

您还应该查看 Profiling Go 程序的介绍性段落,特别是有关在您的机器上配置电源管理的部分。无论好坏,现代 CPU 严重依赖主动热管理,这会给基准测试结果增加噪音。

编写基准


我们将重用上一篇文章中的 Fib 函数。

func Fib(n int) int {
        if n < 2 {
                return n
        }
        return Fib(n-1) + Fib(n-2)
}


基准放置在 _test.go 文件中,并遵循其测试对应物的规则。在第一个示例中,我们将对计算斐波那契数列中第 10 个数字的速度进行基准测试。