如何诊断Resharper Unit Test Runner的"Unable to load one or more of the requested types"错误。

7 浏览
0 Comments

如何诊断Resharper Unit Test Runner的"Unable to load one or more of the requested types"错误。

当我使用Resharper单元测试运行器运行或调试我的单元测试时,会弹出一个对话框,上面写着“无法运行测试 - 无法加载所请求的一个或多个类型。请检查LoaderExceptions属性以获取更多信息”:

现在我已经尝试了重新构建、清理、手动删除文件夹、重新启动Visual Studio、硬件重启、查看输出/调试窗口,甚至启用了R#的“内部”模式,以便查看其日志(据我了解,日志被写入%Temp%\JetLogs),但以上都没有解决这个问题,也没有给出任何线索。我尝试过“调试”R#,但调试器在遇到任何异常之前,对话框就弹出了。

我该如何解决这个问题?这真是非常烦人!

我使用的软件版本是:

- R# 2016.1.2

- NUnit 3.2.1

- Visual Studio 2015 更新2(14.0.25123)

0
0 Comments

问题的原因是由于混合了强名称和非强名称的程序集导致的加载异常。解决方法是通过将单元测试程序集从类库转换为控制台应用程序,并添加一个入口点来诊断该问题。在入口点中,通过迭代所有程序集的类型来加载所有类型和依赖程序集,从而揭示任何加载异常。通过捕获System.Reflection.ReflectionTypeLoadException异常并检查LoaderExceptions属性,可以获得底层问题的详细信息。最后,通过弹出窗口来显示无法加载的程序集及其原因。

0
0 Comments

问题原因:可能是由于某个程序集无法加载,导致Resharper Unit Test Runner出现"Unable to load one or more of the requested types"错误。

解决方法:关闭Visual Studio,删除无法加载的程序集所在的.vsobj文件夹,然后重新打开Visual Studio并再次运行测试。

0
0 Comments

问题原因:在使用Resharper Unit Test Runner运行单元测试时出现了"Unable to load one or more of the requested types"错误。

解决方法:

1. 打开PowerShell,并输入以下命令:

[Reflection.Assembly]::LoadFile('') | % {$_.GetTypes()}

注意:""必须是一个绝对路径。

2. 检查错误信息中的LoaderExceptions,以获取更详细的错误信息。

以上方法可以帮助解决Resharper Unit Test Runner无法加载请求的类型的错误。

0