37

map1_benchmark_test.go私の Go パッケージには、 や などのベンチマーク ファイルがいくつかありますmap2_benchmark_test.go。すべての*_benchmark_test.goファイルには、 や などの複数のベンチマーク関数がfunc BenchmarkMapTravel(b *testing.B)ありfunc BenchmarkMapGet(b *testing.B)ます。

質問は、ベンチマーク関数を 1 つだけテストするにはどうすればよいですか?

いくつかのマニュアルを読もうとしましたが、実行してもベンチマークについて何も得られませんでしたgo help test

4

3 に答える 3

65

テストフラグの説明

-test.bench pattern
    Run benchmarks matching the regular expression.
    By default, no benchmarks run.

-test.run pattern
    Run only those tests and examples matching the regular
    expression.

便宜上、-test.Xテスト バイナリのこれらの各フラグは-X、' go test' 自体のフラグとしても使用できます。

ヘルプについては、

$ go help testflag

例えば、

go test -test.bench MapTravel
go test -test.bench MapGet

また

go test -bench MapTravel
go test -bench MapGet

テスト機能をバイパスするには、-test.runすべてのテストを除外するパターンを含めます。例えば、

go test -test.bench MapTravel -test.run=thisexpressionwontmatchanytest

また

go test -bench MapTravel -run=^$
于 2013-04-23T05:26:36.073 に答える
0

テストのみTestFuncOne

$>> go test -run TestFuncOne

stuff_to_test.go

TestFuncOne() {
}

TestFuncTwo() {
}
于 2016-01-27T02:32:46.147 に答える