You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spark.apache.org by gu...@apache.org on 2026/02/01 21:55:05 UTC
(spark) branch master updated: [SPARK-55286][INFRA] Add test summary to GitHub Actions for better failure visibility
This is an automated email from the ASF dual-hosted git repository.
gurwls223 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/spark.git
The following commit(s) were added to refs/heads/master by this push:
new 0aeb6f9f4937 [SPARK-55286][INFRA] Add test summary to GitHub Actions for better failure visibility
0aeb6f9f4937 is described below
commit 0aeb6f9f493796d0c4d3d1e86e045d6c0621bf1e
Author: Kent Yao <ke...@microsoft.com>
AuthorDate: Mon Feb 2 06:54:54 2026 +0900
[SPARK-55286][INFRA] Add test summary to GitHub Actions for better failure visibility
### What changes were proposed in this pull request?
This PR adds `test-summary/actionv2` to GitHub Actions workflows to display test failures directly in the job summary.
**Jobs updated:**
- `build` - Scala/Java unit tests
- `pyspark` - Python tests
- `sparkr` - R tests
- `tpcds` - TPC-DS benchmark tests
- `docker-integration-tests` - Docker integration tests
The action parses JUnit XML test reports and generates a summary table showing:
- Failed tests grouped by class/suite name
- Error messages and stack traces
- Pass/fail/skip statistics
### Why are the changes needed?
Currently, GitHub Actions CI generates verbose logs that make it hard to find test failures quickly. Developers have to scroll through extensive log output to identify which tests failed.
With this change, test failures appear directly in the GitHub Actions workflow summary, making it easy to identify failures at a glance.
**Example output:**
| Result | Test |
|--------|------|
| ❌ | org.apache.spark.sql.SomeTestSuite › testMethod1 |
| ❌ | org.apache.spark.sql.SomeTestSuite › testMethod2 |
### Does this PR introduce _any_ user-facing change?
No. This only affects the CI/CD workflow display.
### How was this patch tested?
- YAML syntax validated locally
- The `test-summary/action` is a well-maintained GitHub Action with 1000+ stars
- Uses `if: always()` to ensure summary is generated even when tests fail
### Was this patch authored or co-authored using generative AI tooling?
Generated-by: GitHub Copilot
Closes #54069 from yaooqinn/SPARK-55286-test-summary.
Authored-by: Kent Yao <ke...@microsoft.com>
Signed-off-by: Hyukjin Kwon <gu...@apache.org>
---
.github/workflows/build_and_test.yml | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml
index edf9a51057c4..2ed9734fd64c 100644
--- a/.github/workflows/build_and_test.yml
+++ b/.github/workflows/build_and_test.yml
@@ -393,6 +393,13 @@ jobs:
path: |
**/target/test-reports/*.xml
**/target/surefire-reports/*.xml
+ - name: Test Summary
+ if: always()
+ uses: test-summary/action@v2
+ with:
+ paths: |
+ **/target/test-reports/*.xml
+ **/target/surefire-reports/*.xml
- name: Upload unit tests log files
if: ${{ !success() }}
uses: actions/upload-artifact@v4
@@ -675,6 +682,13 @@ jobs:
path: |
**/target/test-reports/*.xml
**/target/surefire-reports/*.xml
+ - name: Test Summary
+ if: always()
+ uses: test-summary/action@v2
+ with:
+ paths: |
+ **/target/test-reports/*.xml
+ **/target/surefire-reports/*.xml
- name: Upload unit tests log files
env: ${{ fromJSON(inputs.envs) }}
if: ${{ !success() }}
@@ -759,6 +773,13 @@ jobs:
path: |
**/target/test-reports/*.xml
**/target/surefire-reports/*.xml
+ - name: Test Summary
+ if: always()
+ uses: test-summary/action@v2
+ with:
+ paths: |
+ **/target/test-reports/*.xml
+ **/target/surefire-reports/*.xml
buf:
needs: [precondition]
@@ -1247,6 +1268,13 @@ jobs:
path: |
**/target/test-reports/*.xml
**/target/surefire-reports/*.xml
+ - name: Test Summary
+ if: always()
+ uses: test-summary/action@v2
+ with:
+ paths: |
+ **/target/test-reports/*.xml
+ **/target/surefire-reports/*.xml
- name: Upload unit tests log files
if: ${{ !success() }}
uses: actions/upload-artifact@v4
@@ -1316,6 +1344,13 @@ jobs:
path: |
**/target/test-reports/*.xml
**/target/surefire-reports/*.xml
+ - name: Test Summary
+ if: always()
+ uses: test-summary/action@v2
+ with:
+ paths: |
+ **/target/test-reports/*.xml
+ **/target/surefire-reports/*.xml
- name: Upload unit tests log files
if: ${{ !success() }}
uses: actions/upload-artifact@v4
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@spark.apache.org
For additional commands, e-mail: commits-help@spark.apache.org