You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure DevOps中能否发布不同测试套件的结果并避免覆盖,同时在Tests and Coverage页面展示全部结果?

解决Azure DevOps测试套件结果覆盖问题,实现同一区域展示全部结果

没问题,我来帮你搞定这个测试结果覆盖的事儿!在Azure DevOps里,确实默认情况下如果处理不当,后运行的测试套件会覆盖前一个的结果,但我们有几种方法可以让两个套件的结果都显示在Tests and Coverage页面上:

方法1:给每个测试任务指定独立的结果文件

不管你用的是Visual Studio Test任务还是其他测试运行任务,核心是让每个测试套件生成不同的测试结果文件,避免路径冲突覆盖。

  • 针对第一个测试套件的任务:在Test results files字段里设置自定义路径,比如**/FirstSuiteResults.trx
  • 针对第二个测试套件的任务:设置另一个路径,比如**/SecondSuiteResults.trx
    这样两个任务生成的结果文件不会互相覆盖,发布后就能在Tests and Coverage页面看到两个套件的全部结果了。

方法2:合并测试结果后统一发布

如果希望最终展示成一个合并的结果集,可以先分别生成两个测试结果文件,再合并成一个后发布:

  1. 用命令行分别运行两个测试套件,生成独立的trx文件:
vstest.console.exe ./FirstTestSuite/bin/Debug/FirstTestSuite.dll /logger:trx;LogFileName=FirstSuite.trx
vstest.console.exe ./SecondTestSuite/bin/Debug/SecondTestSuite.dll /logger:trx;LogFileName=SecondSuite.trx
  1. 使用vstest.console.exe的/merge参数合并两个结果文件:
vstest.console.exe /merge FirstSuite.trx SecondSuite.trx /logger:trx;LogFileName=MergedResults.trx
  1. 在发布管道里添加Publish Test Results任务,指向这个MergedResults.trx文件,就能一次性展示所有测试结果。

方法3:添加多个Publish Test Results任务

如果你的测试任务已经分别生成了结果文件,只是没正确上传,可以在发布管道里为每个测试套件添加一个独立的Publish Test Results任务:

  • 第一个任务:设置Test results files为第一个套件的结果文件路径
  • 第二个任务:设置为第二个套件的结果文件路径
    每个任务都会独立上传自己的测试结果,Azure DevOps会自动在Tests and Coverage页面汇总展示所有上传的结果。

小提示

  • 确保每个测试任务的「Publish test results」选项是开启的(如果用的是Visual Studio Test任务,这个选项在任务设置里可以找到)
  • 检查结果文件的路径是否正确,避免因为路径错误导致结果没被上传

内容的提问来源于stack exchange,提问作者Nastasia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 05:17:36