Jenkins TestNG插件无法从test-results.xml文件中获取结果

问题描述 投票:0回答:4

在我的项目工作区中,test-results.xml文件存在于target \ surefire-reports \ testng-results.xml目录中。但Jenkins无法读取XML文件,并在控制台上给出了以下错误。

TestNG Reports Processing: START
Looking for TestNG results report in workspace using pattern: **\target\surefire-reports\testng-results.xml
Did not find any matching files.

为了确保文件不太旧,我检查了test-results.xml(和其他文件)属于最新的测试运行。 Jenkins服务器在Ubuntu 14.04 LTS上运行。

我正在以这种方式运行我的测试:我的项目根目录有一个run_tests.sh脚本,如下所示:

#!/bin/bash

if [ "$1" = "" ]; then
    echo "Please provide a valid suite XML file name."
else
    mvn clean
    mvn compile
    mvn clean test -Dsurefire.suiteXmlFiles="$1"
fi

我只是将套件XML文件名作为参数传递给Jenkins中的这个脚本(执行shell)。

请帮忙。

jenkins testng
4个回答
1
投票

我找到了解决方案。

  1. 转到配置您的工作
  2. 在General Tab中,您可能会发现 高级按钮,单击此按钮
  3. 选中“使用自定义工作区”复选框,在此下方您会看到“目录”文本框,此处您将复制Selenium工作区文件夹,例如我的 “E:\蚀\ Eclipse的工作空间\ WebDriveTest \”
  4. 在Post-build Actions,Publish TestNG Results,TestNG XML报告模式下向下滚动页面:给出这样的结果 “** / target / surefire-reports / testng-results.xml”(在同一工作区中检查此路径)。

我希望这能帮到您!。


0
投票

您应该使用/而不是\(因为您提到您的Jenkins在UNIX机器上运行)


0
投票

Krishnan,在测试用户谷歌集团,指出它可能是我的詹金斯项目工作区的问题,它是相同的。

我更改了Jenkins项目中的默认工作区。

所以我在Jenkins项目工作区中添加了路径“$ HOME / myWorkspace / myProject /”,并在同一个Jenkins项目的TestNG设置中添加了“** / target / surefire-reports / testng-results.xml”,有用!

谢谢Krishan的帮助。


0
投票

请在另一篇文章here上看到我的答案,应该很清楚。

简而言之,它是由当前目录更改为默认的Jenkins工作区引起的,您需要在Job的Config中设置自定义工作区。

© www.soinside.com 2019 - 2024. All rights reserved.