ホームページ >バックエンド開発 >Golang >分離されたパッケージの Go コード カバレッジを正確に達成するにはどうすればよいですか?

分離されたパッケージの Go コード カバレッジを正確に達成するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-27 06:09:09636ブラウズ

How to Achieve Accurate Go Code Coverage for Isolated Packages?

Go で分離されたフォルダーのコード カバレッジを測定する方法

Go では、別のフォルダーに存在するパッケージのコード カバレッジを測定するのが困難な場合があります。次のプロジェクト構造を考えてみましょう。

stuff/stuff.go -> package: stuff
test/stuff/stuff_test.go -> package: test

stuff_test.go は、stuff.go のコードを実行しますが、カバレッジ レポートには次のように表示される場合があります。

coverage: 0.0% of statements

これは、 go test -cover by によるものです。デフォルトでは、依存関係ではなく、テスト対象のパッケージのみが分析されます。

この問題に対処するには、-coverpkg オプションを使用して、どのパッケージを考慮する必要があるかを指定できます。カバレッジ分析用。たとえば、次のコマンドには、現在のディレクトリにあるすべてのパッケージが含まれます:

go test ./test/... -coverprofile=cover.out -coverpkg ./...

テストの実行が完了したら、次を使用してカバレッジ レポートを生成できます:

go tool cover -html=cover.out

これにより、別のフォルダー内のパッケージのカバレッジを含む、プロジェクトのコード カバレッジの詳細なレポートを提供します。

以上が分離されたパッケージの Go コード カバレッジを正確に達成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。