在 Azure DevOps 中对拉取请求运行选择性测试用例
Posted
技术标签:
【中文标题】在 Azure DevOps 中对拉取请求运行选择性测试用例【英文标题】:Run selective test cases on Pull Request in Azure DevOps 【发布时间】:2020-12-18 23:05:49 【问题描述】:我们在项目中设置了一个流程来创建拉取请求 (PR),同时将代码从功能分支合并到开发或主分支。 PR 不会完成,除非 & 直到 CI 成功并且应用程序中的所有测试用例都成功运行。然后 SonarQube 使用测试用例执行报告来发布代码覆盖率。 SonarQube 配置为仅发布新代码行的报告。
目前,这些测试用例(单元测试用例)大约需要 2-2.5 小时才能完成,从而有效地延迟了 PR 的完成。因此,我们正在考虑一些解决方法,我们可以只运行受影响的测试用例作为 PR CI 的一部分。这在 Azure DevOps 中可行吗?
【问题讨论】:
这能回答你的问题吗? VSTS Build - Choose which unit tests run depending on which files were modified in a pull request 嗨,这个问题有更新吗?请检查以下答案是否能解决您的问题。 【参考方案1】:您正在寻找测试影响分析。请阅读the docs,但基本上:
TIA 通过自动测试选择执行增量验证。它将仅自动选择验证提交的代码所需的测试子集。对于进入 CI/CD 管道的给定代码提交,TIA 将仅选择并运行验证该提交所需的相关测试。因此,该测试运行将更快地完成,如果出现故障,您会更快地了解它,并且因为它都是由相关性确定的,所以分析也会更快。
您只需要在 Visual Studio 测试任务中启用它:
【讨论】:
以上是关于在 Azure DevOps 中对拉取请求运行选择性测试用例的主要内容,如果未能解决你的问题,请参考以下文章
是否可以限制谁可以在 Azure DevOps 中完成拉取请求?