ホームページ > バックエンド開発 > Golang > 「go test」を使用して Go でテスト実行をカスタマイズするにはどうすればよいですか?

「go test」を使用して Go でテスト実行をカスタマイズするにはどうすればよいですか?

DDD
リリース: 2024-12-26 10:43:10
オリジナル
547 人が閲覧しました

How Can I Customize Test Execution in Go Using `go test`?

「go test」による Go でのテスト実行のカスタマイズ

複雑なコードベースをテストする場合、実行中に「go test」を使用して特定のテストを選択的にスキップまたは除外することが望ましいことがよくあります。 " 指示。これにより、開発者は既存のテストに影響を与えることなく、機能の特定の領域に集中したり、新機能のトラブルシューティングを行ったりすることができます。

SkipNow() と Skip() を使用したテストの除外

Go は、「テスト」内に 2 つのメソッドを提供します。テストをスキップするためのパッケージ: SkipNow() および Skip().

SkipNow()

Skip() は、テストがスキップされたことを示すコメントをテスト出力に追加しますが、他のテストは許可されます。

これらのメソッドを使用するには、テスト関数の先頭に適切な関数呼び出しを追加するだけです。例:

func skipCI(t *testing.T) {
  if os.Getenv("CI") != "" {
    t.SkipNow("Skipping testing in CI environment")
  }
}

func TestNewFeature(t *testing.T) {
  skipCI(t)
}
ログイン後にコピー

環境変数に基づいて条件付きでテストをスキップするには、SkipNow() を使用し、テストを実行する前に変数を設定します。

ショート モードを使用したテストの除外

テストを除外する別のオプションは、「ショート」モードを使用することです。このモードは、注釈に -test.short フラグが付いているテストのみを実行するように「go test」に指示します。

テスト関数に -test.short フラグを追加するには、テストの注釈を次のように変更します。 :

// +test.short
func TestNewFeature(t *testing.T) { ... }
ログイン後にコピー

ショート モードでテストを実行するには、-short を指定して "go test" を実行します。 flag:

go test -short
ログイン後にコピー

注: このアプローチでは、実行時の条件に動的に基づくのではなく、注釈に基づいてテストが除外されます。

以上が「go test」を使用して Go でテスト実行をカスタマイズするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート