Warning
This repository now hosts the legacy ScaCap/action-surefire-report@v1 line.
Active development and future releases have moved to ScalableCapital/action-surefire-report@v2.
New adopters should use v2, and existing v1 users should plan their migration before support ends on 2026-08-01.
Replace:
uses: ScaCap/action-surefire-report@v1With:
uses: ScalableCapital/action-surefire-report@v2The active release line, documentation, and ongoing maintenance now live in the ScalableCapital repository.
This legacy v1 line will stop receiving support after 2026-08-01.
This action processes maven surefire or failsafe XML reports on pull requests and shows the result as a PR check with summary and annotations.
Optional. Glob expression to surefire or failsafe report paths. The default is **/surefire-reports/TEST-*.xml.
Optional. Set to false to add annotations to the current job where this action is being executed. The default is true.
Optional. Check name to use when creating a check run. The default is Test Report.
Optional. The commit sha to update the status. This is useful when you run it with workflow_run.
Optional. Check will fail if there are test failures. The default is false.
Optional. Check will fail if no tests were found. The default is true.
Optional. Set to true to consider flaky tests as success. The default is false.
Optional. Skip the test report publishing (check run creation). The default is false.
Optional. Usually in form of github_token: ${{ secrets.GITHUB_TOKEN }}. The default is ${{ github.token }}.
Optional. Set to true to get the file name from the stack trace. The default is false.
Optional: If you use GitHub Enterprise, you can set this to the URL of your server (e.g. https://github.myorg.com/api/v3).
Optional: Custom summary text to display in the workflow run output. Useful when generating reports in a separate workflow and linking back to the original test execution. Markdown is supported.
name: build
on:
pull_request:
jobs:
build:
name: Build and Run Tests
runs-on: ubuntu-latest
# Permissions block is optional, useful for dependabot checks
permissions:
checks: write
contents: read
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Build and Run Tests
run: mvn test --batch-mode --fail-at-end
- name: Publish Test Report
if: success() || failure()
uses: scacap/action-surefire-report@v1As Gradle uses a different build directory than Maven by default, you might need to set the report_paths variable:
report_paths: '**/build/test-results/test/TEST-*.xml'You also need to enable JUnit XML reports as shown below.
test {
reports {
junitXml.enabled = true
}
}