【问题标题】:Get XML Reports in TeamCity from Google Test从 Google Test 获取 TeamCity 中的 XML 报告
【发布时间】:2012-10-07 00:42:56
【问题描述】:

我试图弄清楚如何使用 Google Test 运行单元测试并将结果发送到 TeamCity。

我已经运行了我的测试,并使用命令行参数--gtest_output="xml:test_results.xml" 将结果输出到 xml。

我正在尝试在 TeamCity 中读取此 xml。我看不到如何在构建/运行期间将XML Reports 传递给 TeamCity...

通过XML report Processing除外:

我添加了 XML 报告处理,添加了 Google 测试,然后... 它要求我指定监控规则,我添加了xml文件的路径...我不明白监控规则是什么,或者如何创建它们...

[不过,我在生成的 xml 中看不到任何地方,它打算与 TeamCity 对话...]

在日志中,我有:

Google Test report watcher
[13:06:03][Google Test report watcher] No reports found for paths:
[13:06:03][Google Test report watcher] C:\path\test_results.xml
[13:06:03]Publishing internal artifacts

当然,没有报告结果。

谁能指导我将 xml 测试结果文件导入 TeamCity 的正确方法?非常感谢!

编辑:XML 报告处理是否可能只处理在构建期间创建的报告? (哪个 Google 测试没有做?)并且忽略了以前生成的报告,因为“过时”,而只是说它找不到它们 - 或者格式错误,或者......但是我应该阅读上面的信息?

【问题讨论】:

    标签: teamcity googletest


    【解决方案1】:

    我发现了一个bug report,显示构建过程中未生成的xml报告被忽略,让像我这样的新手相信它们可能没有正确生成。

    两个简单的解决方案:

    1) 创建后期构建脚本

    2) 添加一个使用命令行参数调用命令行可执行文件的构建步骤。示例:

    添加构建步骤

    添加构建功能 - XML 报告处理

    【讨论】:

    • 我想我自己也遇到了同样的问题,你能解释一下问题和解决方案吗?
    【解决方案2】:

    我在让它工作时遇到了类似的问题。这就是我让它工作的方式。

    当您从命令行调用您的 google 测试可执行文件时,将 %teamcity.build.checkoutDir% 添加到您的 xml 文件的名称中,以设置它的路径,如下所示:

    --gtest_output=xml:%teamcity.build.checkoutDir%test_results.xml
    

    然后在构建步骤页面上配置您的其他构建功能时,将此行添加到您的监控规则中:

    %teamcity.build.checkoutDir%test_results.xml
    

    现在路径匹配并且位于构建目录中。

    【讨论】:

      猜你喜欢
      • 2016-10-16
      • 2012-03-08
      • 2017-08-14
      • 1970-01-01
      • 2019-11-06
      • 1970-01-01
      • 1970-01-01
      • 2017-02-14
      • 2016-07-21
      相关资源
      最近更新 更多