如何在 Azure DevOps 发布管道中失败后立即重新运行失败的测试

问题描述 投票:0回答:2

我有一个 Azure DevOps 发布管道,其中配置了 VSTest@2 任务来执行我的 selenium 测试。 它重新运行失败的测试,但会等到所有测试执行结束,然后重新执行失败的测试。 我编写了一些顺序测试,这些测试需要一个接一个地运行,因为一个测试创建的测试数据将被后续测试使用。 我希望失败的测试在失败后立即重新运行,而不是在最后重新执行。 例如,如果我有 5 个测试,而 test#2 失败,我不希望执行其余测试,直到重新运行并通过失败的测试或达到最大重新运行尝试次数。 有什么办法可以实现这一点吗? 使用的技术:Selenium 与 C#、nUnit

该任务已配置为重新运行失败的测试,但它会在所有测试执行完成后执行。 任务yaml 变量: 类别:“回归”

步骤:

  • 任务:VSTest@2 显示名称:'VsTest - testAssemblies' 输入: testAssemblyVer2: '**/Automation.dll' testFiltercriteria: '类别=$(类别)' 失败OnMinTestsNotRun:假 重新运行失败测试:true 继续错误:true
azure-devops azure-pipelines cicd azure-pipelines-release-pipeline vstest
2个回答
0
投票

我了解您对

VSTest@2
任务的要求。不幸的是,在当前版本的任务中没有内置选项可以执行此操作。

rerunFailedTests
功能仅在测试运行结束时有效,而不是在测试运行期间有效。 一种可能的解决方法是,您可以将测试拆分为不同的测试程序集或测试类别,并在单独的 VSTest@2 任务中运行它们。如果任何测试失败,您可以重新运行。

如果您希望该功能在失败时重新运行测试,您可以在链接

此处

中提出用户语音票证。


0
投票

© www.soinside.com 2019 - 2024. All rights reserved.