VSTest@2版本升级后源过滤器变更致测试用例无法找到
修复VSTest@2单元测试源过滤器异常问题
问题根源
VSTest@2从2.198.0升级到2.227.0后,官方调整了默认测试源过滤器规则:默认仅匹配**\bin\**\*test.dll,**\bin\**\*tests.dll,这是版本升级带来的行为变更,和你的输出目录结构不匹配导致测试步骤异常。
修复方案
手动指定测试源过滤器:
在流水线的VSTest@2任务中,找到「测试文件」(Test files)配置项,手动输入原过滤器规则:**\*test*.dll,!**\*TestAdapter.dll,!**\obj\**如果是YAML流水线,直接设置
testAssemblyVer2参数:task: VSTest@2 inputs: testAssemblyVer2: '**\*test*.dll,!**\*TestAdapter.dll,!**\obj\**' # 其他配置项保持不变指定正确的搜索根目录:
若你的测试dll输出目录不是默认的bin,在VSTest@2任务的「搜索文件夹」(Search folder)中填写实际的输出路径(比如$(Build.ArtifactStagingDirectory)或自定义构建输出目录),确保过滤器能定位到测试dll。版本回退验证(可选):
若需要确认是版本升级导致的问题,可临时将VSTest@2版本指定回2.198.0,验证测试步骤是否恢复正常:task: VSTest@2 inputs: version: '2.198.0' # 其他配置项保持不变
内容的提问来源于stack exchange,提问作者Carorus
相关产品推荐
相关产品推荐

