Go 测试:避免常见错误与利用特性
在 Go 语言开发中,编写准确有效的测试是确保代码质量和性能的关键。然而,在实际操作中,开发者常常会犯一些错误,同时也可能忽略 Go 语言提供的一些有用测试特性。下面将详细介绍一些常见的测试错误以及 Go 语言的测试特性。
1. 编写不准确的基准测试
在进行基准测试时,我们需要谨慎对待,因为很多因素可能会对结果产生显著影响,从而导致错误的假设。
例如,我们对 AtomicStoreInt32 和 AtomicStoreInt64 进行基准测试:
$ go test -bench=. -count=10 | tee stats.txt
运行结果如下:
cpu: Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
BenchmarkAtomicStoreInt32-4
234935682
5.124 ns/op
BenchmarkAtomicStoreInt32-4
235307204
5.112 ns/op
// ...
BenchmarkAtomicStoreInt64-4
235548591
5.107 ns/op
BenchmarkAtomicStoreInt64-4
235210292
5.090 ns/op
// ...
然后使用 benchstat 工具分析结果:
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



