【问题标题】:How to generate JUnit style XML report using TestNG?如何使用 TestNG 生成 JUnit 样式的 XML 报告?
【发布时间】:2012-11-08 11:54:44
【问题描述】:

我正在使用 TestNG 框架进行集成测试。我想使用 TestNG 生成 JUnit 样式的 XML 报告。我的项目不使用 Ant,但我们使用 Maven。您能告诉我 JUnit 样式 XML 的格式是什么,以及如何使用 TestNG API 生成 JUnit XML 文件。稍后我想将此 JUnit XML 文件与 Hudson 集成,甚至想使用 TestNG 自定义此 JUnit XML 报告。

那么我该如何完成以上任务呢?

【问题讨论】:

  • 当我运行 mvn test "-DsuiteXmlFile=${suiteFile}" 时,我看到创建了一个名为 ./target/surefire-reports/TEST-TestSuite.xml 的新文件。它是 jUnit.xml 格式。

标签: testing junit hudson hudson-plugins surefire


【解决方案1】:

TestNG 已经生成了这些文件,在test-output/junitreports 下查看。

【讨论】:

  • 感谢您的 cmets。我想使用 TestNG API 来覆盖报告功能。怎么做?例如:如果您查看 JUnit HTML,您会看到 Hudson 按类/包名称对事物进行分组。因此,如果我们想在 HUdson HTML 报告中获得不同的 grouppig。我们需要改变 XML 的生成方式。例如,我们可以在 XML 中放置测试名称而不是类/包。
  • 查找IReporterITestListener 的文档:testng.org/doc/documentation-main.html#logging
  • 感谢您的 cmets。我已经实现了 IReporter 接口来生成我的自定义报告。它生成 Hudson 支持的 JUnit XML 格式。现在我还有一个问题:如何在运行报告时获取 Hudson 的运行时间信息。询问的原因是:我有主 Hudson 服务器,其中一些作业配置为 Hudson 从属服务器,而我的 Hudson 从属服务器正在另一台服务器上运行,而不是在主 Hudson 服务器上。当我在我的哈德逊奴隶上运行报告时,我应该显示报告。但是我的 JUnit 报告 XML 文件在我的 Hudson 从站上可用,但 Hudson 无法选择。
  • JUnit 附件插件已安装并配置在主 hudson 服务器上,Hudson 从服务器将通过使用归档文件选项获取主 hudson 服务器的属性。因此“发布 JUnit 报告”选项在从 Hudson 上不可用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-19
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
相关资源
最近更新 更多