如何在 TFS 2013 上并行 运行 MSpec 测试?

How do I run MSpec tests in parallel on TFS 2013?

我正在尝试在 TFS 2013 的多个内核上对 运行 进行一系列 MSpec 测试。它似乎不是开箱即用的。它可以 运行 MSpec,但只能按顺序进行,并且需要一个多小时。

我正在关注 this guide,但在第 4 步中,他说用 ParallelForEach 替换 Foreach Xaml 元素以并行测试 运行。我下载了TFS 2013中的默认构建模板,简单很多,但是没有这个标签

它有:

<mtba:RunAgileTestRunner 
  DisplayName="Run VS Test Runner" 
  Enabled="[Not AdvancedTestSettings.GetValue(Of Boolean(&quot;DisableTests&quot;, false)]"
  TestSpecs="[AutomatedTests]"
  ConfigurationsToTest="[ConfigurationsToBuild]" />

我假设如果您想 运行 并行测试,它们是需要很长时间才能 运行 的集成测试。

如果是这样,那么您应该将所有非单元测试移出构建并将它们进一步推向管道。

http://nakedalm.com/execute-tests-release-management-visual-studio-2013/

您可以使用 Release Management 来部署您的应用程序和 运行 您的集成测试。在这里,您可以 运行 大量 运行ning 测试而无需锁定构建服务器。

default MSpec test runner cannot run tests in parallel. That's why you see the reimplementation of a parallel test runner.

我怀疑 TFS 是否正在从框架源代码中实施 MSpec 测试 运行ner(尽管这是可能的)。那个并行测试 运行ner 是 using internal classes,就像 ISpecificationRunner,并且 运行 将它们并行。

如果您必须坚持使用 MSpec 和 TFS,您唯一的选择是

  • 将您的测试分成多个 projects/assemblies 并将它们提供给 TFS 并行任务,该任务 shell- 执行默认测试 运行ner

  • 使用 TFS shell-执行任务 运行 通过并行 运行ner

  • 测试