ホームページ >バックエンド開発 >Golang >ソース ファイルとテスト ファイルが別のフォルダーにある場合、正確な Go コード カバレッジを達成するにはどうすればよいですか?

ソース ファイルとテスト ファイルが別のフォルダーにある場合、正確な Go コード カバレッジを達成するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-30 05:06:10663ブラウズ

How Can I Achieve Accurate Go Code Coverage When Source and Test Files Are in Separate Folders?

Go での分離されたフォルダーのコード カバレッジの検出

Go コードをテストするときは、テストの有効性を検証するために適切なコード カバレッジを確保することが重要です。ただし、プロジェクト構造がソース コードとテスト ファイルを個別のフォルダーに分離している場合、正確なコード カバレッジ情報を取得する際に問題が発生する可能性があります。

このシナリオでは、プロジェクト構造にスタッフ/stuff.go と test/ が含まれています。異なるパッケージ (それぞれスタッフとテスト) に属しているstuff/stuff_test.goの場合、テスト実行でカバレッジのレポートに失敗する可能性があります。スタッフ.go.

解決策

この問題に対処するには、go test の実行時に -coverpkg フラグを利用できます。このフラグを使用すると、カバレッジ情報を記録するパッケージを指定できます。このフラグを使用すると、テスト実行に目的のパッケージが含まれていることを確認し、ソース コードのコード カバレッジを正確にレポートできます。

たとえば、スタッフ パッケージとテスト パッケージの両方のカバレッジを分析するには:

go test -coverpkg=./... ./test/...

カバレッジ レポートの表示

適切な -coverpkg フラグを使用してテストを実行したら、次のことができます。 go ツール cover を使用してカバレッジ レポートを生成します。このツールは、カバレッジ情報を視覚化する HTML レポートを作成し、コード内でカバーされていない行を特定できるようにします。

レポートを生成するには:

go tool cover -html=cover.out

-coverpkg フラグを利用するを使用すると、テストの実行で分離されたフォルダーのコード カバレッジを正確に追跡し、アプリケーションのカバレッジに関する貴重な洞察を得ることができます。

以上がソース ファイルとテスト ファイルが別のフォルダーにある場合、正確な Go コード カバレッジを達成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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