首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单元测试-程序集加载失败

单元测试-程序集加载失败
EN

Stack Overflow用户
提问于 2016-01-15 10:30:43
回答 1查看 1.2K关注 0票数 0

我有一个Visual项目(包含NUnit测试),其平台目标是:任意CPU (调试和发布)。此项目引用具有以下配置的dll (Reference.dll):

代码语言:javascript
复制
(from ILSpy)
// Architecture: AnyCPU (64-bit preferred)
// This assembly contains unmanaged code.
// Runtime: .NET 4.0

[assembly: CLSCompliant(true)]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyProduct("DotNet")]
[assembly: AssemblyTitle("DotNet")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: TargetFramework(".NETFramework,Version=v4.5", FrameworkDisplayName = ".NET Framework 4.5")]
[assembly: SecurityRules(SecurityRuleSet.Level1)]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, UnmanagedCode = true)]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]

在构建项目时,将使用以下配置生成Tests.dll。

代码语言:javascript
复制
(from ILSpy)
// Architecture: AnyCPU (64-bit preferred)
// Runtime: .NET 4.0

[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyTrademark("")]
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: ComVisible(false)]
[assembly: Guid("37AAB39F-D11B-4C7D-887C-A056A63177A3")]
[assembly: TargetFramework(".NETFramework,Version=v4.5", FrameworkDisplayName = ".NET Framework 4.5")]

我使用Resharper使用以下首选项运行NUnit测试:

默认平台架构:基于测试项目目标平台的自动化

默认.NET框架版本:基于测试项目目标平台的自动化

在执行测试用例并使用来自Reference.dll的任何方法时,我得到以下异常:System.BadImageFormatException:无法加载文件或程序集“”或其依赖项之一。尝试加载格式不正确的程序。

当我将Tests.dll的目标平台更改为x86时,它可以工作。有人能解释一下为什么两个平台的都不能工作吗?

EN

回答 1

Stack Overflow用户

发布于 2016-01-15 14:51:35

这似乎失败了,因为正在测试的程序集(而不是带有测试的程序集)是32位。如果测试项目设置为AnyCPU,它将运行为64位,并且无法加载正在测试的程序集。

您需要将测试项目设置为与正在测试的程序集或其依赖项具有相同的位性。ReSharper只在决定它应该作为32位还是64位运行时才查看测试程序集。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34809076

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档