TFS 2015 MsTest 命令行太长

TFS 2015 MsTest command-line too long

我们有一个使用 TFS 2015 的 CI 系统,一切运行良好。
但是,我们添加了一些新测试,"Gather Artifacts" 阶段停止工作。
我追踪到 MSTest 命令行是这样构建的:

MsTest.exe /testcontainer:blah /test:test1 /test:test2 [...] /resultsfile:"c:\blah.trx"

因此,当我们超过一定数量的测试时,命令行会变得太长并变得 t运行cated,丢失 /resultsfile 开关,可能还有一些 /test: 开关。

在这种情况下,TFS 报告套件已通过,尽管事实上所有测试都没有 运行。

我在 MSTest.exe 的文档中看到有一个 /testlist: 参数可以让您通过指向一个文件来指定哪些测试 运行。

任何人都可以帮助我解决如何切换到使用测试列表或其他解决此问题的方法吗?

正如DaveShaw在评论中所说,限制不是MSTest或TFS,它与Windows Command Line AFAIK有关。

我们可以使用 VSTEST 和 MSTEST 从命令行 运行 自动化单元和编码 UI 测试。

  • VSTest.Console.exe 针对性能进行了优化, 就地使用 在 Visual Studio.
  • 中的 MSTest.exe

完成运行测试后。不会保存结果,目标目录下没有生成.trx文件

  • MSTest.exe 您可以使用 MSTest.exe 程序来 运行 自动化测试 在命令行的测试程序集中。

MSTest 用于负载测试以及与 Visual Studio 2010 测试项目的兼容性。

MSTest 也可用于查看这些测试的测试结果 运行s,将结果保存到磁盘,并将您的结果保存到 Team Foundation Server。 更多详细信息,您可以参考此 link:How to choose between tcm.exe, mstest.exe and vstest.console.exe

由于您使用的是TFS2015,如果您没有任何VS2010测试项目, 我们鼓励您使用 VStest 而不是 MStest。

我找到了解决方案,就是从使用 "Test Plan" 切换到 "Test Assembly"