【问题标题】:TFS 2015 Update 1: How to publish test results (trx) and fail the build on testfailuresTFS 2015 更新 1:如何发布测试结果 (trx) 并在 testfailures 上失败
【发布时间】:2016-03-18 12:28:35
【问题描述】:

我通过different mechanism 在 WebUI 上运行我们基于硒的单元测试,而不是 TFS 2015(更新 1)中的常规构建步骤。这样做会生成一个 .trx 文件,我试图将其上传回 TFS,以便在构建概述中提供结果。

如果任何测试失败,运行 UnitTests 的构建步骤可能会导致构建失败,但是我不会在 TFS 中看到任何测试结果。我可以通过检查步骤中的“继续出错”来跳过失败。

接下来我可以包含一个“发布测试结果”步骤,它将获取生成的 trx 文件,结果将在构建中可见。

但要知道构建不会失败!

知道如何使构建失败并提供测试结果吗?

我已经检查过:

  • vstest.console.exe(无法从文件发布测试结果)
  • MSTest(需要企业版/高级版license,我们有 MSDN 专业版)。

必须有更好的方法。在我看来,构建步骤“发布测试结果”应该能够检查文件并使构建失败?

【问题讨论】:

  • 您是否尝试添加脚本任务来检查文件?
  • 你能分享一下你的构建定义的截图吗?
  • 构建过程中如何调用ParallelTestRunner.exe运行?

标签: tfs-2015


【解决方案1】:

我在构建过程中使用“命令行”任务调用“ParallelTestRunner.exe”来运行测试。

这样,如果测试失败而没有选中“出错时继续”选项,则构建将在此步骤停止,“发布测试结果”步骤将不会运行,这看起来与您得到的行为相同。如果测试失败并选中“错误继续”选项,则测试步骤被标记为“通过”,并且“发布测试结果”步骤将运行以发布测试结果。但我的最终构建状态不是“成功”,而是“构建部分成功”。

但是,如果您希望测试步骤失败并仍然运行“发布测试结果”步骤,您可以取消选中测试步骤的“出错时继续”选项并选中“发布测试结果”的“始终运行”选项步。这将确保“发布测试结果”步骤始终运行,即使之前的步骤失败。

顺便说一句,“发布测试结果”步骤只发布测试结果,不检查结果。根据构建定义中所有构建步骤的执行状态,构建通过/失败。

【讨论】:

    猜你喜欢
    • 2016-05-04
    • 2016-02-18
    • 1970-01-01
    • 2021-02-10
    • 2018-03-03
    • 2017-11-02
    • 1970-01-01
    • 2017-12-04
    • 2018-05-12
    相关资源
    最近更新 更多