为了账号安全,请及时绑定邮箱和手机立即绑定

如何只测试一个基准功能?

如何只测试一个基准功能?

Go
BIG阳 2021-06-03 18:10:09
在我的 Go 包中有几个基准文件,比如map1_benchmark_test.go和map2_benchmark_test.go. 在每个*_benchmark_test.go文件中,都有不止一个基准函数,例如func BenchmarkMapTravel(b *testing.B)和func BenchmarkMapGet(b *testing.B)。问题是,我怎样才能只测试一个基准函数?我试图阅读一些手册,但通过运行go help test.
查看完整描述

3 回答

?
紫衣仙女

TA贡献1839条经验 获得超15个赞

您无法提供任何标志,它只会运行基准测试(或仅运行一个基准测试)。与这些相关的唯一标志是:


-bench regexp 运行与正则表达式匹配的基准测试。默认情况下,不运行任何基准测试。要运行所有基准测试,请使用“-bench”。或 '-bench=.'。


-run regexp 只运行那些匹配正则表达式的测试和示例。


因此,如果您只想运行一个基准测试,您可以这样做:


go test -bench=nameOfYourBenchmark -run=^a

这将导致仅运行以a. 并且因为每个测试都应该命名为Test<something>,所以不会有测试要运行。


仅运行基准测试:


go test -bench=. -run=^a


查看完整回答
反对 回复 2021-06-07
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

仅测试TestFuncOne


$>> go test -run TestFuncOne

stuff_to_test.go


TestFuncOne() {

}


TestFuncTwo() {

}


查看完整回答
反对 回复 2021-06-07
  • 3 回答
  • 0 关注
  • 216 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信