コードカバレッジレポート - AWS CodeBuild

コードカバレッジレポート

CodeBuildを使用すると、テスト用のコードカバレッジレポートを生成できます。以下のコードカバレッジレポートが用意されています。

線カバレッジ

線カバレッジは、テストでカバーするステートメントの数を測定します。ステートメントは単一の命令で、コメントや条件は含まれません。

line coverage = (total lines covered)/(total number of lines)

ブランチカバレッジ

ブランチカバレッジは、 ifまたは case ステートメントなど、コントロール構造のすべての可能なブランチからテストがカバーするブランチの数を測定します。

branch coverage = (total branches covered)/(total number of branches)

以下のコードカバレッジレポートファイル形式がサポートされています。

  • JaCoCoXML

  • SimpleCovJSON¹

  • Clover XML

  • Cobertula XML

¹ CodeBuild は、simplecov-json ではなく、simplecov によって生成された JSON コードカバレッジレポートを受け入れます。

コードカバレッジレポートを作成する

コードカバレッジレポートを作成するには、buildspec ファイルで少なくとも 1 つのコードカバレッジレポートグループが設定されているビルドプロジェクトを実行します。 AWS CodeBuild はコードカバレッジ結果を解釈し、実行用のコードカバレッジレポートを提供します。同じ buildspec ファイルを使用する後続のビルドごとに、新しいテストレポートが生成されます。

テストレポートを作成するには

  1. ビルドプロジェクトを作成します。詳細については、「AWS CodeBuild でのビルドプロジェクトの作成」を参照してください。

  2. テストレポート情報を使用して、プロジェクトの buildspec ファイルを設定します。

    1. reports:セクションを追加し、レポートグループの名前を指定します。 AWS CodeBuildは、プロジェクト名と - 形式で指定した名前を使用して、レポートグループを作成しますproject-namereport-group-name-in-buildspec 使用するレポートグループがすでにある場合は、その ARN を指定します。ARN の代わりに名前を使用すると、 AWS CodeBuildは新しいレポートグループを作成します。詳細については、を参照してください Reports syntax in the buildspec file

    2. レポートグループで、コードカバレッジ結果を含むファイルの場所を指定します。複数のレポートグループを使用する場合は、レポートグループごとに結果ファイルの場所を指定します。ビルドプロジェクトを実行するたびに、新しいコードカバレッジレポートが作成されます。詳細については、を参照してください テストファイルの指定

      これは、test- にある JaCoCo XML 結果ファイルのコードカバレッジレポートを生成する例results/jacoco-coverage-report.xmlです。

      reports: jacoco-report: files: - 'test-results/jacoco-coverage-report.xml' file-format: 'JACOCOXML'
    3. commandsまたは build シーケンスのセクションで、コードカバレッジ分析を実行するコマンドを指定します。post_build詳細については、を参照してください テストコマンドの指定

  3. ビルドプロジェクトのビルドを実行します。詳細については、を参照してください AWS CodeBuild でのビルドの実行

  4. ビルドが完了したら、プロジェクトページの [Build history (ビルド 履歴)] から新しいビルド実行を選択します。レポートを選択して、コードカバレッジレポートを表示します。詳細については、を参照してください ビルドのテストレポートの表示