Visual Studio 2017创建Web/负载测试报错:找不到指定ID测试设置
问题成因及解决办法
我之前也踩过VS2017负载测试的这个坑,结合自己的排查和社区经验,给你梳理下:
问题成因
- VS2017的测试设置文件关联逻辑存在bug,新建测试项目时自动生成的
Local.testsettings经常没有正确注册到项目的测试配置体系中,导致系统找不到对应GUID的配置项。 - 测试项目的
.csproj/.vbproj文件里的测试设置引用可能损坏或缺失,当你尝试创建新测试时,VS会读取项目配置但找不到匹配的GUID,从而抛出错误。 - VS的本地缓存(比如
.vs文件夹)损坏,也会干扰测试配置的正常读取。
解决方法
方法1:手动重新关联测试设置文件
这是最直接的修复方式,亲测有效:
- 在解决方案资源管理器中右键点击你的测试项目,选择「属性」。
- 切换到「测试」标签页,在「测试设置」下拉框中选择「<选择测试设置文件>」,找到项目中的
Local.testsettings并选中。 - 保存项目设置,重启VS后再尝试创建Web/负载测试。
方法2:修复项目文件的测试配置引用
如果手动关联没用,可能是项目文件里的配置出了问题:
- 关闭VS,找到测试项目的
.csproj(或.vbproj)文件,用记事本打开。 - 查找是否有
<TestSettingsFile>Local.testsettings</TestSettingsFile>节点,如果没有,手动添加到<PropertyGroup>节点内(比如放在<TargetFrameworkVersion>附近)。 - 检查是否存在
<TestSettingsId>节点,要是有,确保它的值和Local.testsettings文件里的<Id>值完全一致(打开Local.testsettings就能看到这个GUID)。如果不一致就改成匹配的,或者直接删掉<TestSettingsId>节点,让VS自动关联。 - 保存项目文件,重新打开VS。
方法3:清理VS本地缓存
缓存损坏也是常见诱因:
- 关闭所有VS实例,找到解决方案根目录下的
.vs隐藏文件夹(需要先开启显示隐藏文件),删除整个文件夹。 - 重新打开VS并加载解决方案,再尝试创建测试。
方法4:重新创建测试项目
如果上面的方法都无效,可以尝试兜底方案:
- 备份现有的
Webtest1.webtest和Local.testsettings文件。 - 删除当前的负载测试项目,重新创建一个新的负载测试项目。
- 将备份的测试文件导入新项目,再重新关联测试设置文件。
内容的提问来源于stack exchange,提问作者jsmit2
相关产品推荐
相关产品推荐

