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

TeamCity: How to run tests projects in parallel

我有 4 个测试项目,我想 运行 所有这些都在 TeamCity 上并行进行。

那我可以吗?可以的话怎么办?

fixtures 在所有测试项目上并行执行是可以的,但我希望我可以 运行 这些 vstest.console 命令并行? vstest.console command does run here not in parallel

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

为此,您需要创建 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. 对比构建工具 (vstest.console.exe)

要运行 4 个dll 并行,我们需要的是在cmd vstest.console.exe 中调用4 个dll 文件,由space 分隔。 像这样:https://docs.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