分割されたテスト ファイルによるパッケージ カバレッジのテスト
多数のテスト ファイルを含むコードベースを編成する場合、実際のテスト ファイルからテストを分割すると有利な場合があります。コードベースを明確にし、ベスト プラクティスを遵守します。このようなシナリオでは、テスト ファイルがテスト対象のコードとは異なるパッケージに存在する可能性があります。
テスト対象の実際のパッケージのカバレッジ統計を取得するときに、潜在的な課題が 1 つ発生します。デフォルトでは、テストは、テストが存在するパッケージの範囲のみを提供します。この問題は、コードとテスト ファイルが同じパッケージ内に共存する必要があるという Go のアプローチに起因します。
解決策
幸いなことに、Go はこのジレンマに対する解決策を提供します。
go test -cover -coverpkg "api_client" "api_client_tests"
「-coverpkg」フラグを指定すると、指定したパッケージ (この場合は「api_client」) のカバレッジを測定するように Go に指示できます。 )、別のパッケージ(「api_client_tests」)からテストを実行している間。これにより、API クライアント パッケージをテスト ファイルと統合することなく、その範囲を正確に確認できます。
代替アプローチ
分離されたテスト パッケージを使用すると、組織化という点では利点がありますが、このアプローチは、コードとテストを組織化する従来の Go の方法から逸脱していることに注目する価値があります。ブラックボックス テストが主な目的であり、パブリック パッケージ API のみがテストにアクセスできる場合は、代替方法が利用可能です。
以上がGo で個別のテスト ファイルを含むパッケージのカバレッジを測定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。