JaCoCo报告生成器使用教程
项目地址:https://gitcode.com/gh_mirrors/ja/jacoco-report
1. 项目介绍
jacoco-report
是一个GitHub Action,用于在Pull Request中发布JaCoCo报告作为评论。该Action允许用户自定义通过百分比,包括修改模块的文件和整个项目。通过这个Action,用户可以查看Pull Request中仅更改文件的覆盖率。
主要功能
- 在Pull Request中发布JaCoCo报告。
- 支持自定义通过百分比。
- 支持更新现有评论而不是创建新评论。
- 支持跳过没有更改的文件。
- 支持自定义通过和失败的表情符号。
2. 项目快速启动
2.1 创建工作流文件
在你的仓库中创建一个工作流文件,例如 jacoco-report.yml
,并放置在 .github/workflows
目录下。
2.2 配置工作流
以下是一个示例工作流配置:
name: Measure coverage
on:
pull_request:
jobs:
build:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Run Coverage
run: |
chmod +x gradlew
./gradlew testCoverage
- name: Add coverage to PR
id: jacoco
uses: madrapps/[email protected]
with:
paths: |
$[[ github.workspace ]]/**/build/reports/jacoco/prodNormalDebugCoverage/prodNormalDebugCoverage.xml
$[[ github.workspace ]]/**/build/reports/jacoco/**/debugCoverage.xml
token: $[[ secrets.GITHUB_TOKEN ]]
min-coverage-overall: 40
min-coverage-changed-files: 60
2.3 运行工作流
提交并推送你的更改,GitHub Actions将自动运行并生成JaCoCo报告。
3. 应用案例和最佳实践
3.1 在多模块项目中使用
如果你的项目是多模块的,可以使用通配符模式来匹配所有模块的JaCoCo报告文件。例如:
paths: |
$[[ github.workspace ]]/**/build/reports/jacoco/**/prodNormalDebugCoverage.xml
$[[ github.workspace ]]/**/build/reports/jacoco/**/debugCoverage.xml
3.2 自定义通过和失败的表情符号
你可以自定义通过和失败的表情符号,例如:
pass-emoji: ':green_circle:'
fail-emoji: ':red_circle:'
3.3 更新现有评论
如果你想更新现有的评论而不是创建新评论,可以设置 update-comment
为 true
,并提供一个标题:
update-comment: true
title: 'Code Coverage'
4. 典型生态项目
4.1 JaCoCo Playground
jacoco-playground
是一个示例项目,展示了如何在Pull Request中生成和查看JaCoCo报告。你可以查看该项目中的Pull Request,了解报告是如何在评论中显示的。
4.2 JaCoCo Android Playground
jacoco-android-playground
是一个多模块的Android项目示例,展示了如何在多模块项目中使用JaCoCo报告生成器。
通过这些示例项目,你可以更好地理解如何在实际项目中应用 jacoco-report
。