You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TFS 2017构建未拾取CodedUI测试代码变更问题求助

我之前也碰到过类似的TFS构建/发布中CodedUI测试代码不更新的问题,结合你的环境(TFS 2017 + Windows Server 2012 R2 + Windows 10测试机),整理几个最可能的排查方向和解决办法:

1. 检查构建定义中测试项目的生成配置
  • 首先确认构建定义里是否正确包含了CodedUI测试项目,并且**生成配置(Debug/Release)**和你预期的一致。有时候可能误选了旧的配置,或者测试项目的生成开关被意外关闭了。
  • 可以在构建定义的「生成」步骤里,查看是否勾选了测试项目的「生成」选项,并且输出路径是否正确指向后续发布环节会用到的目录。
2. 验证测试项目的输出文件是否被正确发布到测试机
  • TFS发布环节可能没把最新编译的CodedUI测试程序集(.dll、.exe)同步到测试机的正确路径,你可以:
    • 构建完成后,先去TFS的构建工件存储目录里,检查测试项目的输出文件是否是最新的(看文件修改时间)。
    • 查看发布定义的「部署」步骤,确认是否把测试程序集从构建工件目录复制到了测试机的测试执行目录,有没有勾选「覆盖现有文件」的选项——很多时候就是因为没开覆盖,导致旧文件一直留在测试机上。
3. 清理测试机上的测试执行缓存
  • CodedUI测试执行时,可能会依赖测试代理的缓存或者本地测试运行器的缓存,试试这些操作:
    • 在Windows 10测试机上,停止并重启Visual Studio Test Agent服务(可以在系统服务列表里找到)。
    • 手动清理测试缓存:打开命令提示符,运行vstest.console.exe /InIsolation强制隔离运行测试;或者删除测试机上的临时缓存目录,比如C:\Users\<测试代理账户>\AppData\Local\Temp\VisualStudioTestExplorerExtensions。
4. 确认测试项目的版本控制绑定和构建触发条件
  • 有时候测试项目的版本控制绑定会出问题,导致TFS没检测到测试代码的变更:
    • 在Visual Studio里打开测试项目,检查解决方案资源管理器里的文件是否有版本控制标记(比如变更、锁定标记),确认所有测试代码文件都正确提交到了TFS版本库。
    • 检查构建定义的「触发」条件,是否设置了「检测到源代码变更时触发构建」,并且测试项目所在的路径被包含在触发路径里,没有被意外排除。
5. 排查构建过程中的测试项目编译日志
  • 如果前面的步骤都没问题,建议拉取完整的构建日志排查:
    • 构建完成后下载完整日志,搜索测试项目的编译环节,看是否有警告或错误(比如编译失败但被忽略,导致复用了旧的程序集)。
    • 重点看是否有「跳过生成」之类的日志信息,这可能意味着构建系统误判测试项目没有变更,所以跳过了重新编译。

内容的提问来源于stack exchange,提问作者Jereme

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 08:25:15