Go 統合テストでのテスト カバレッジの測定
Go REST API で統合テストを実行する場合、 go test -cover を使用すると誤解を招く可能性があります。テストカバレッジは 0%。これは、サービス パッケージの外部にあるテストが go ツール カバーによって認識されないためです。
ただし、-coverpkg ディレクティブは、テストはそのパッケージに属します。これにより、次のようなサービス パッケージの正確なカバレッジ レポートが可能になります。
$ go test -cover -coverpkg mypackage ./src/api/... ok /api 0.190s coverage: 50.8% of statements in mypackage ok /api/mypackage 0.022s coverage: 0.7% of statements in mypackage
対照的に、 go test -cover を使用すると、次のようにレポートされます。
$ go test -cover ./src/api/... ok /api 0.191s coverage: 71.0% of statements ok /api/mypackage 0.023s coverage: 0.7% of statements
これは、次のような -coverpkg の有効性を示しています。カバレッジ測定を目的のパッケージ (この場合は mypackage) に分離します。これは統合テストのカバレッジに対する最適なアプローチではないかもしれませんが、特定のモジュールのコード カバレッジに関する貴重な洞察を提供します。
以上がGo 統合テストでカバレッジを正確に測定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。