生成Google C ++单元测试XML报告

时间:2011-11-25 11:39:28

标签: xml unit-testing report googletest

我不熟悉使用Google测试框架进行单元测试,并打算生成测试或命令输出的XML报告作为报告(我可以显然打印它)。我已阅读了 Generate XML Report ,但未能清楚地了解如何生成报告。任何帮助将不胜感激。

干杯。

4 个答案:

答案 0 :(得分:14)

对于Linux环境:

很简单,你必须像这样设置GTEST_OUTPUT环境变量:export GTEST_OUTPUT =“xml:/ home / user / src”。或者以相同的方式设置-gtest_output标志。

答案 1 :(得分:11)

我已经提到了v01d的解决方案,并为可能遇到同一问题的其他人做了一个完整且正确框架的答案。

设置环境变量:

  1. 转到 MyComputer ,右键单击并单击属性
  2. 单击 Advanced 选项卡,然后单击 Environment Variables
  3. 单击以添加新变量并按以下方式设置属性:

    • 变量: GTEST_OUTPUT

    • 值: xml:\ home \ user \ XML_Report.xml

  4. 重新启动MSVC ++并再次运行程序。您应该能够在相应的文件夹中找到您的XML报告,如您指定的“ Value ”属性中所述。此外,您甚至可以在Microsoft Access的帮助下将xml报告转换为您想要的特定格式选择。这里给出了一个简单的教程/示例: XML Conversion.

    希望这有帮助!

答案 2 :(得分:8)

除了@The Newbie建议的方法外,您还可以通过在命令中设置标志 - gtest_output =" xml:\ home \ user \ XML_Report.xml" 来生成XML报告如果您使用的是Microsoft Visual Studio,那么您可以添加命令参数flag - gtest_output =" xml:\ home \ user \ XML_Report.xml"

设置命令参数flag:

  1. 右键单击项目并转到属性。
  2. 转到配置 属性 - >调试
  3. 在Command Arguments中添加 --gtest_output =" XML:\家\用户\ XML_Report.xml"

答案 3 :(得分:4)

Googletest不会生成与JUnit兼容的XML文件,在这种情况下,您需要将生成的XML转换为JUnit XML格式。

Reported Issue

Workaround Solution