VS Code Test Explorer无法显示测试,报错“Cannot read properties of null”
解决VS Code Test Explorer测试列表消失及"Cannot read properties of null"报错问题
核心排查与修复步骤
清理测试项目输出目录
彻底删除测试项目的bin和obj文件夹,清除残留编译文件或锁定的dll对测试发现流程的干扰。终止残留testhost进程
打开任务管理器,结束所有名为testhost.exe或testhost.x86.exe的进程,解决Microsoft.TestPlatform.PlatformAbstractions.dll被占用的问题。重置VS Code测试扩展状态
- 关闭VS Code,删除用户目录下的测试扩展缓存文件夹:
%USERPROFILE%\.vscode\extensions\ms-dotnettools.vscode-dotnet-test-explorer-<版本号>\(不确定版本号可直接删除整个ms-dotnettools.vscode-dotnet-test-explorer相关文件夹) - 重新打开VS Code,等待扩展重新加载并扫描测试项目。
- 关闭VS Code,删除用户目录下的测试扩展缓存文件夹:
校验测试项目框架与平台配置
确认测试项目.csproj文件中,TargetFramework和PlatformTarget与主项目完全一致,避免框架不匹配导致测试发现失败:<PropertyGroup> <TargetFramework>net5.0-windows</TargetFramework> <PlatformTarget>AnyCPU</PlatformTarget> </PropertyGroup>更新测试相关NuGet包
将测试项目中的Microsoft.NET.Test.Sdk、xunit、xunit.runner.visualstudio包更新到与.NET 5.0兼容的最新稳定版本,修复潜在的包版本冲突。调整VS Code测试配置
在.vscode/settings.json中确保测试项目路径配置正确,同时添加运行时指定配置:"dotnet-test-explorer.testProjectPath": "**/*Tests.csproj", "dotnet-test-explorer.runtime": "net5.0"
额外验证步骤
- 打开测试项目终端,执行
dotnet test命令,查看命令行是否能正常发现并运行测试。若命令行正常,问题出在VS Code扩展层面;若命令行也报错,需排查测试代码或项目本身配置问题。 - 禁用其他可能冲突的VS Code扩展(如代码格式化、调试类扩展),重启后重新测试。
内容的提问来源于stack exchange,提问作者dot
相关产品推荐
相关产品推荐

