建立程式碼涵蓋範圍報告 - AWS CodeBuild

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立程式碼涵蓋範圍報告

CodeBuild 可讓您產生測試的程式碼涵蓋範圍報告。提供下列程式碼涵蓋範圍報告:

線路涵蓋範圍

明細涵蓋範圍會測量測試涵蓋的陳述式數量。陳述式是單一指示,不包括註解或條件。

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

分支涵蓋範圍

分支涵蓋範圍會測量您的測試在控制結構的每個可能分支中涵蓋多少分支,例如 ifcase陳述式。

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

支援下列程式碼涵蓋範圍報告檔案格式:

  • JaCoCo XML

  • SimpleCov JSON1

  • Clover XML

  • 庫伯圖拉 XML

  • LCOV INFO

1 CodeBuild 接受 Simplecov 產生的JSON程式碼涵蓋範圍報告,而不是 Simplecov-json

建立程式碼涵蓋範圍報告

若要建立程式碼涵蓋範圍報告,請執行建置專案,該專案在其 buildspec 檔案中至少設定一個程式碼涵蓋範圍報告群組。 CodeBuild 會解譯程式碼涵蓋範圍結果,並為執行提供程式碼涵蓋範圍報告。使用相同 buildspec 檔案的各個後續建置都會產生新的測試報告。

建立測試報告
  1. 建立建置專案。如需相關資訊,請參閱 在 中建立建置專案 AWS CodeBuild

  2. 使用測試報告資訊設定專案的 buildspec 檔案:

    1. 新增reports:區段,並指定報告群組的名稱。使用您的專案名稱和您以 格式 project-name- 指定的名稱,為您 CodeBuild 建立報告群組report-group-name-in-buildspec。如果您已有要使用的報告群組,請指定其 ARN。如果您使用 名稱而非 ARN, 會 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. buildpost_build序列的 commands區段中,指定執行程式碼涵蓋範圍分析的命令。如需詳細資訊,請參閱 指定測試命令

  3. 執行建置專案的建置。如需詳細資訊,請參閱手動執行 AWS CodeBuild 建置

  4. 當建置完成時,請從專案頁面上的 Build history (建置歷史記錄) 選擇新的建置執行。選擇報告以檢視程式碼涵蓋範圍報告。如需詳細資訊,請參閱檢視建置的測試報告