我有一个詹金斯有很多工作 . 这些作业以XML格式进行测试并生成测试输出 . 这些XML测试结果看起来非常标准 - 像这样:
<testsuites name="testsuitesname">
<testsuite name="testsuitename">
<testcase classname="classname" name="testcasename">
blabla
</testcase>
</testsuite>
</testsuites>
当您使用Post-build操作发布JUnit测试结果报告(在作业的配置页面上找到)时,构建的发布结果(在Jenkins中)的结构将如下所示:
-
<root>
( Headers :包装) -
<classname>
( Headers : class ) -
<testcasename>
( Headers :测试名称)
此层次结构中没有 <testsuitesname>
和 <testsuitename>
,就像在XML文件中一样 .
有没有选择:
-
将
<testsuitesname>
和<testsuitename>
添加到Jenkins构建的测试结果发布层次结构中的层次结构中: -
(
<root>
) -
<testsuitesname>
-
<testsuitename>
-
<classname>
-
<testclassname>
要么
- 以某种方式为
<testcase>
标签添加更多层次结构?
背景:因为我的测试结果非常大(大量)我想为它添加更多的层次结构/结构而不仅仅是两个级别(就像现在这样)以获得对所有这些结果的更多概述 .
任何人都可以帮助我或有类似的问题吗?
最好
安迪
1 回答
不幸的是,我没有找到简单的答案来改变Jenkins在构造测试结构方面的不同行为 . 但是,我发现我的案例有所改进,我想分享 .
Jenkins中的测试结果层次结构如下:
包裹
class
测试名称
这些可以在
<testcase>
-tag中定义如下:因此,在“名称”中,您可以定义层次结构的最后一部分 - 测试名称 . 在“classname”中,您可以定义层次结构的前两个部分 - 包和类,由点分隔 .
请记住,只允许一个点 . 仅通过添加更多点,只需在classname标记中添加更多“分隔部分”,就无法创建更深层次的层次结构 . 如果点数多于一个,则最后一个计数 .
所以一个“完整”的例子: