在 CentOS 上,Jenkins 可通过内置步骤或插件生成并展示测试与质量报告,包括 JUnit、Allure、HTML 等常见格式。下面给出可直接落地的配置方法与排错要点。
一、前置准备
java -version、git --version 正常;Jenkins 建议使用 2.346+ 版本以获得更好插件兼容性与安全性。systemctl 管理 Jenkins 服务,并放行 8080/8772 等端口(如使用非默认端口)。二、快速方案总览
| 报告类型 | 必备工具/插件 | 关键步骤 | 报告入口 |
|---|---|---|---|
| JUnit 测试报告 | JUnit 插件(内置) | 测试框架输出 JUnit XML;Job 中“构建后操作”添加 Publish JUnit test result report | 构建页 → Test Result |
| Allure 报告 | Allure Commandline 插件 | 测试输出 allure-results;Job 中“构建后操作”添加 Allure Report | 项目首页 → Allure Report |
| 自定义 HTML 报告 | HTML Publisher 插件 | 生成 HTML;Job 中“构建后操作”添加 Publish HTML reports | 构建页 → HTML Report |
三、分步配置示例
JUnit 报告(适用于 Java/gTest/JUnit 等)
target/surefire-reports/*.xml 或 gtest 的 *.xml)。**/target/surefire-reports/*.xml 或 code/test/test_results/*.xml)。Allure 报告(适用于 Python pytest、Robot Framework 等)
pytest ... --alluredir=**$WORKSPACE/allure-results**robot --listener allure_robotframework --outputdir **./output/robot** mytest.robotallure-results 或 output/robot)。自定义 HTML 报告(适用于手写的 HTML 报告)
reports/)。reports/、index.html)。System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")(或安装 Groovy 插件在构建步骤中执行,避免重启后失效)。四、邮件通知与报告分发
五、常见问题与排查
**/*.xml)。allure-results 目录在构建后存在且包含 .json 结果文件;如需展示环境信息,在 allure-results 下放置 environment.properties 或 environment.xml。jenkins 用户运行,确保对工作区与报告目录有读写权限;必要时调整 JENKINS_USER 并放行防火墙端口(如 8080/8772)。