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 サイトの他の関連記事を参照してください。