TeamCity:如何并行运行测试项目



我有 4 个测试项目,并希望在 TeamCity 上并行运行所有这些项目。

那么我能做到吗?如果我能,那怎么办?

在所有测试项目上由夹具并行执行是可以的,但我希望我可以并行运行这些 vstest.console 命令? vstest.console 命令在这里不并行运行

我的回答可能不适用于您的情况,具体取决于您拥有的资源。 我的想法要求您运行 4 个代理,以便您可以并行使用它们。

为此,您需要创建 4 个构建配置(每个并行运行一个((命名为:testRun0、testRun1、testRun2、testRun3(。 然后,您可以添加另一个构建配置(可以命名为:"testReport"(,该配置将其他 4 个作为"快照依赖项"。

在这种情况下,每次在第 5 个构建配置中发生触发器时,它都会首先触发其他 4 个触发器。

JetBrain文档中有一个很好的例子:https://blog.jetbrains.com/teamcity/2019/10/build-chains-teamcitys-blend-of-pipelines-part-2-running-builds-in-parallel/查看"复合构建配置"部分。

我们所需要的只是:

  1. 1 个控制台运行程序步骤
  2. VS 构建工具 (vstest.console.exe(

要并行运行 4 个 dll,我们需要在 cmd vstest.console 中调用.exe其中 4 个 dll 文件用空格分隔。 像这样:https://learn.microsoft.com/en-us/visualstudio/test/vstest-console-options?view=vs-2019#code-try-1

我们可以使用参数记录它们/logger:logger://teamcity /logger:console;verbosity=normal

所以最终命令看起来像:

<path_to_vstest.console> vstest.console.exe MSTest.dll UnitTest1.dll UnitTest2.dll UnitTest3.dll /logger:logger://teamcity /logger:console;verbosity=normal /Parallel

最新更新