TFS 2015 Update 1:如何发布测试结果(trx)并使testfailures上的构建失败

时间:2016-03-18 12:28:36

标签: tfs2015

我在WebUI上运行基于selenium的UnitTests,而不是TFS 2015(Update 1)中的resular构建步骤different mechanism。这样做会生成一个.trx文件,我尝试将其上传回TFS,以便在构建概述中提供结果。

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

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

但是知道构建不会失败!

任何想法都是如何使构建失败并获得测试结果?

我查了一下:

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

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

1 个答案:

答案 0 :(得分:2)

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

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

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

顺便说一句,“发布测试结果”步骤只发布测试结果,它不检查结果。基于构建定义中所有构建步骤的执行状态,构建将被传递/失败。