Jenkins Maven项目无法读取testng-results.xml文件求助
解决Maven类型Jenkins任务无法读取TestNG报告的问题
针对你遇到的Maven任务找不到test-output/testng-results.xml、且无自定义工作区选项的问题,可尝试以下几种解决方案:
1. 直接指定精确的报告扫描路径
进入Maven任务的配置页面,找到Post-build Actions中的Publish TestNG Results,将TestNG XML report pattern从默认的**/testng-results.xml修改为精确路径:
test-output/testng-results.xml
注意使用正斜杠/,Jenkins不识别反斜杠\。这种方法跳过通配符扫描,直接定位目标文件,成功率较高。
2. 修改TestNG报告的输出路径(通过pom.xml配置)
在项目的pom.xml中配置maven-surefire-plugin,将TestNG报告输出到Jenkins更易扫描的路径,比如项目根目录:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.0.0-M7</version> <!-- 使用合适的插件版本 --> <configuration> <!-- 指定报告输出到项目根目录的test-results文件夹 --> <reportsDirectory>${project.basedir}/test-results</reportsDirectory> </configuration> </plugin> </plugins> </build>
配置完成后,在Jenkins的TestNG报告设置中,将扫描路径改为**/test-results/testng-results.xml即可。
3. 检查工作区与权限问题
- 查看Jenkins任务主页的Workspace链接,确认
test-output文件夹确实存在于当前工作区内,部分多模块Maven项目可能会将报告生成在子模块路径下,此时需要调整扫描路径为**/模块名/test-output/testng-results.xml - 确保Jenkins运行用户拥有读取
test-output文件夹及文件的权限,权限不足也会导致无法读取报告
内容的提问来源于stack exchange,提问作者Rohit Kumar
相关产品推荐
相关产品推荐

