c# - System.IO.FileLoadException:调试测试时无法加载文件或程序集“testhost”
问题描述
每次我尝试从 Rider IDE 调试单元测试时,测试执行都会失败并出现异常
System.IO.FileLoadException:无法加载文件或程序集“testhost,Culture=neutral,PublicKeyToken=null”。无法找到或加载特定文件。(来自 HRESULT 的异常:0x80131621)文件名:'testhost,Culture=neutral,PublicKeyToken=null'
堆栈跟踪:
at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, IntPtr ptrLoadContextBinder)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, IntPtr ptrLoadContextBinder)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, IntPtr ptrLoadContextBinder)
at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
at Xunit.Runner.VisualStudio.VsTestRunner.GetAvailableRunnerReporters(IEnumerable`1 sources) in C:\Dev\xunit\xunit\src\xunit.runner.visualstudio\VsTestRunner.cs:line 711
错误只发生在一个复杂的项目中,简单的项目调试器启动并正常工作。
在 Visual Studio 中调试工作正常。我将不胜感激寻找可能的解决方案的方向。
解决方案
我通过“核”整个项目解决了这个问题:)
从磁盘中删除整个存储
库后 - 克隆存储库
- 再次生成 Visual Studio 解决方案文件(我们不会将它们保留在存储库中)
- 构建解决方案
- 运行测试
- 调试其中一个测试 - 调试器正常工作
我从一些 JetBrains 论坛中发现了从 dotnet 位置删除 Micrososft.AspNet.Core 文件夹的建议,虽然建议的方法不起作用,但它让我知道问题可能出在这个特定的解决方案依赖项上。
推荐阅读
- vue.js - 这个 main.js 的 vuejs 3 版本
- sql-server - Power Automate Bad Gateway 错误 Microsoft Lists to SQL Server
- javascript - javascript:将数字转换为时间
- regex - golang regexp.MatchString 处理 url 匹配
- python - python中的继承问题与python树库(anytree)
- go - 无法将 http 标头添加到 gin 客户端(解析器上下文)
- excel - 比较两个 Excel 工作表时 VBA 代码不断崩溃
- c# - C# Datagridview ,第一列(ID)必须是主键而不使用数据库,如何设置它?
- html - Tailwind:不正确的中心定位:w-1/2 不起作用 flex justify-center 变为左对齐 [fiddle]
- angular - 使用设备进行角度条码扫描