.NET Core 2.0 xUnit项目:这些DLL文件是什么?
关于VS2017中显示不存在的xUnit相关DLL的解释
你遇到的这个情况其实是.NET Core项目依赖管理和Visual Studio文件显示逻辑共同导致的正常现象,下面给你拆解一下:
这些DLL是什么?
这几个文件都是xUnit测试框架的测试运行器组件,各自负责不同的核心功能:
xunit.runner.reporters.netcoreapp10.dll:测试报告生成器,用来把测试结果输出成多种格式(比如XML、HTML),方便后续查看或集成到CI流程中。xunit.runner.utility.netcoreapp10.dll:测试运行的工具类库,提供测试发现、执行调度等基础通用逻辑,是其他运行器组件的依赖基础。xunit.runner.visualstudio.dotnetcore.testadapter.dll:xUnit和Visual Studio测试平台的适配层,正是靠它,VS才能识别你的xUnit测试项目、加载测试用例并在测试资源管理器中运行。
为什么VS里显示但实际目录不存在?
原因很简单:这些DLL并不是直接存放在你的项目根目录里,而是通过NuGet包管理的方式,被下载到了全局NuGet包缓存(路径一般是%USERPROFILE%\.nuget\packages)。
当你用dotnet new xunit创建项目时,项目文件(.csproj)里已经自动添加了xUnit相关的包引用,Visual Studio的“显示所有文件”功能会解析这些引用,把依赖的相关文件显示出来——哪怕它们实际不在本地项目目录里,这只是VS为了让你能直观看到项目依赖的组件而已。
你可以去全局缓存目录里找找,肯定能找到这些文件的真身,而且这完全不影响你的测试项目运行,属于正常的依赖管理行为。
内容的提问来源于stack exchange,提问作者JTech
相关产品推荐
相关产品推荐

