gpt4 book ai didi

java - 如何在 JUnit XML 报告上配置名称和类名属性

转载 作者:太空宇宙 更新时间:2023-11-04 09:28:43 25 4
gpt4 key购买 nike

为了与外部测试管理解决方案集成并了解 Karate 结果,我需要使用 JUnit XML 报告导入它们。JUnit 的 XML 报告中标识的测试用例由元素上的名称和类名属性标识。然而,这些名称似乎是以某种方式动态生成的,而不是作为清楚标识原始测试用例的唯一标识符。理想的情况是相应的测试用例具有唯一的标识符,因此如果我们多次导入结果,它们始终与测试管理解决方案中的相同实体相关联。

我尝试运行 karate-junit5 sample code并使用“mvn test”运行它。这是生成的 JUnit XML 报告的示例。

  <testcase name="testTags[1][1]" classname="karate.SampleTest" time="0.002"/>
<testcase name="testSample[1][1]" classname="karate.SampleTest" time="0"/>
<testcase name="testSample[1][2]" classname="karate.SampleTest" time="0"/>
<testcase name="testFullPath[1][1]" classname="karate.SampleTest" time="0"/>

我希望“name”属性填充测试用例的唯一标识符,与运行的次数无关,例如使用 Scenario 的值(例如“first hello world”)

Feature: sample

Scenario: first hello world
* print 'hello'

Scenario: second scenario
* print 'second'

因此,生成这样的 JUnit XML 报告会更有用。

  <testcase name="second" classname="karate.SampleTest" time="0.002"/>
<testcase name="first hello world" classname="karate.SampleTest" time="0"/>
<testcase name="second scenario" classname="karate.SampleTest" time="0"/>
<testcase name=first" classname="karate.SampleTest" time="0"/>

或者用功能名称加上场景名称填充名称属性。无论如何,有什么方法可以配置如何填充 Junit 报告元素上的这些属性吗?

最佳答案

很确定您正在使用旧版本的 Karate 或其他东西(可能是 JUnit 本身)生成此 XML。阅读本文,您可能需要将报告解决方案指向不同的文件夹或排除一些不是由 Karate 创建的文件:https://github.com/intuit/karate#test-reports

肯定有机会提高 Karate ,所以我建议你这样做。

打开一个新问题,然后按照以下流程操作:https://github.com/intuit/karate/wiki/How-to-Submit-an-Issue - 然后指定您想要对今天生成的内容进行哪些更改。

XML 创建代码也在此文件 Engine.java 中查找 saveResultXml() 方法。

关于java - 如何在 JUnit XML 报告上配置名称和类名属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57374797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com