当前位置: 首页 > 知识库问答 >
问题:

junit插件未显示jenkins中所有测试的结果

易星宇
2023-03-14

我有一个测试套件,其中一些XML文件是在运行单元测试(junit)后生成的。还有一些量角器自动化测试使用jasmine junit xml reporter(https://github.com/larrymyers/jasmine-reporters)创建xml文件。在我的jenkins工作中,我使用junit插件(Publish junit test result report)来发布报告。因此,现在,作业完成后,从单元测试生成9个xml,由jasmine-reporter生成2个xml,因此,如下文从我的jenkins作业控制台输出中所述,它能够识别出来自我在作业配置中指定的模式的11个xml文件。

22:49:52 [xUnit] [INFO] - [JUnit] - 11 test report file(s) were found with the 
pattern '**/tests/target/failsafe-reports/junitreports/*.xml' relative to 
'/home/jenkins/workspace/projectName' for the testing framework 
'JUnit'.

但是,问题是,当我点击jenkins job UI中的“test result”链接时,它只显示了单元测试生成的所有与xml相关的测试,而没有显示任何与jasmine报表生成的xml相关的结果。需要帮助了解为什么jenkins没有显示任何与jasmine XML相关的测试结果。

下面是由单元测试生成的示例XML(当单击test result link时,jenkins在ui中显示了该示例)。

<!--
Generated by org.testng.reporters.JUnitReportReporter 
-->
<testsuite hostname="someHostName" 
name="packageName.Class1" tests="22" failures="0" timestamp="16 
Apr 2018 05:47:59 GMT" time="69.663" errors="0">
  <testcase name="test1" time="2.488" 
classname="packageName.Class1"/>
  <testcase name="test2" time="5.808" 
classname="packageName.Class1"/>
</testsuite>

下面是jasmine junit XML reporter生成的示例XML(jenkins在其UI中单击test result链接时没有显示该结果)

<testsuites>
  <testsuite name="chromeTestItemDetailsPage" timestamp="2018-04-16T05:48:43" 
hostname="localhost" time="29.357" errors="0" tests="22" skipped="0" 
disabled="0" failures="0">
   <testcase classname="chromeTestItemDetailsPage" name="ItemTitleDisplayed" 
time="0.895"/>
   <testcase classname="chromeTestItemDetailsPage" name="ItemPriceDisplayed" 
time="0.966"/>
 </testsuite>
</testsuites>

共有1个答案

金何平
2023-03-14

我想你遇到了詹金斯的问题。

Jenkins在JUnit XML报告中使用 的属性classnametestname对UI上的测试结果进行分类。此外,Jenkins希望classname由一个包名后跟一个点,然后是一个类名组成:

<testcase classname="packagename.classname" name="testname">

如果不存在点,则Jenkins假定包为“根”。如果存在多个点,则仅将最后一个点识别为分隔符。更好的解释见此问题。

    null
 类似资料:
  • 我正在使用Ant构建我的项目并运行testng测试。我使用jenkins调用Ant目标来运行TestNG测试。还安装了TestNG插件在jenkins上运行在我的项目所在的同一台机器上。 在完成Jenkins的工作时,我得到了跟踪和TestNG结果没有生成。

  • 问题内容: 我正在尝试为我的Qt单元测试项目使用Jenkins xUnit插件,但是我无法使其工作… 这是我到目前为止所做的: 首先,我使用qmakebuilder插件构建我的单元测试项目(向qmakebuilder插件提供.pro),然后添加构建部分,首先在其中放置testResult xml文件,然后运行测试带有标志的二进制文件,以使其为我生成xml文件,然后将xml文件命名为: 最后,在Po

  • 我一直在设置一些合约JUnit 4测试(遵循回答这个问题的建议) - 例如,如果我有一个接口(我已经在示例中包含了泛型,因为我在我的项目中使用它们) - 但是,这是一个大大简化的示例: 我可以创建一个抽象的合同测试,例如: ...并为每个实现扩展此抽象测试类(我使用。我还将一些变量传递给抽象测试类,以测试接口的实现。 然而,实际上,一些接口返回的对象是其他接口的实现,我希望能够使用该接口的抽象契约

  • 问题内容: 我已经尝试了最后一个小时左右,才能进行以下工作。我的附件存储在目标目录中。但是它们没有在类级别或测试级别的测试页面上链接。 我尝试了以下各项的每种组合: 将附件文件夹与目标文件夹放在一起 与 将附件文件夹放在目标中并在标准输出中打印 将附件文件夹放入并在标准输出中打印 我正在运行从属主机设置,那没关系。 我的Jenkins版本是1.529,JUnit附件插件是1.3。 https://

  • 正如我在开始时所说的,单元测试成功率确实成功地显示出来,所以我相信只需要一个小的改变就可以使单元测试复盖范围发挥作用。 任何帮助都将不胜感激!

  • 我从JUnit测试开始。 我正试图写一个简单的测试,却发现了这个问题。 当测试正常时,它显示在结果中:测试运行: 1,失败: 0,错误: 0,跳过: 0,时间流逝: 0.008秒 当我将一个1更改为0时,它应该失败:测试运行:0,失败:0,错误:0,跳过:0,经过的时间:0.008秒,它也不会抛出应该抛出的错误消息。 我是做错了什么,还是不应该这样?试图通过谷歌搜索,但找不到类似的问题。 我正在使