【问题标题】:TeamCity: How to run tests projects in parallelTeamCity:如何并行运行测试项目
【发布时间】:2020-07-14 22:12:17
【问题描述】:

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

那我可以这样做吗?如果可以的话怎么办?

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

【问题讨论】:

  • 我是否需要使用一些 selenium RC 或类似 PNUnit 的东西?一个很好的链接,其中包含有用的指南,如果可能的话,如何从其他 4 个项目并行运行测试

标签: automated-tests nunit teamcity


【解决方案1】:

我的回答可能不适用于您的情况,具体取决于您拥有的资源。 我的想法要求您运行 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/ 查看“复合构建配置”部分。

【讨论】:

  • 感谢您的好主意。我还有一个。所以我想创建一个从命令行运行所有测试的 bat 文件,并且在 teamcity 中将是一个调用该 bat 文件的控制台运行程序步骤。这是一个非常简单的解决方案,我希望它能起作用)
【解决方案2】:

我们只需要:

  1. 1 个控制台运行器步骤
  2. 与构建工具 (vstest.console.exe)

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-26
    • 1970-01-01
    • 1970-01-01
    • 2017-10-18
    • 1970-01-01
    • 2014-02-06
    • 1970-01-01
    相关资源
    最近更新 更多