tfsbuild - TFS vNext 构建测试影响分析 - 始终运行解决方案中某些项目的所有测试
问题描述
我有一个包含多个项目和测试项目的 C# Visual Studio 2017 解决方案,一个带有 VS 测试任务的 vNext 构建管道。“仅运行受影响的测试”选项已启用。清洁选项未选中。
我开始构建没有变更集(没有代码更改)。在测试代理的工作区中,我可以验证没有重建发生:项目引用、复制本地、构建前/后事件、如果较新则复制都很好。构建后不会替换任何程序集。
某些项目的测试未运行(这是正确的),但某些项目的测试始终运行。
这些测试项目的项目属性似乎相同。
有人对在哪里看有建议吗?
解决方案
请确保在以前的构建/测试中没有失败的测试,并且在上次构建期间没有生成新文件来影响当前的构建/测试。
请参阅下面的链接以了解自动选择的测试以及可以为测试影响分析调整测试选择的策略。
测试影响分析 (TIA) 将查看传入的提交,并选择一组相关测试——这些将包含 3 个组件
(1) 受传入提交影响的现有测试。
(2) 此外,它还将选择以前失败的测试——如果没有,那么在几次提交的过程中,一些早期失败的测试用例可能会丢失……因此,TIA 将跟踪在以前的构建中失败的测试并将它们包括在内在选择中。
(3) 它还将包括新添加的测试——如果你的提交包含新的测试怎么办?这样的测试可以发现产品错误,对吧?因此,TIA 也会选择新添加的测试。
TIA 有:
(1) 稳健的测试选择——这包括现有的受影响测试、先前失败的测试和新添加的测试。
(2)安全回退——对于 TIA 无法推理的提交和场景,它将安全地回退到运行所有测试(您可以在日志中看到提到的内容)。TIA 目前仅限于托管代码和单框拓扑。因此,例如,如果代码提交包含对 HTML/CSS 文件的更改,它就无法推理它们并将回退到运行所有测试。
(3) 可配置的覆盖——您可以按配置的周期运行“所有”测试。
推荐阅读
- abap - 如何从 ST03N 中提取“内存使用统计”?
- python - 我的海龟代码有什么问题?不能理解
- c# - 调试 Artifactory 中的 Nuget 包
- c# - 如何使用外键关系同时向两个表中插入新记录
- cloudera - Cloudera 管理服务的配置文件
- php - 返回 404 Wordpress 的所有页面和帖子(永久链接问题)
- amazon-web-services - 如何在 UI 中设计具有 4 个过滤器的 DynamoDB 索引
- python - 避免熊猫数据框的for循环来计算每个id python
- python - 需要开始训练两次以加载检查点(它有效,但为什么?)
- vue.js - 有没有办法在标签内添加评论