【发布时间】:2012-05-03 01:07:15
【问题描述】:
我为 log4net 编写了一个包装类。此包装类与 asp.net Web 应用程序一起正常工作。现在我正在尝试使用 NUNIT 测试我的包装类方法。 在包装类项目中,我将 log4net DLL 的“复制本地”设置为 True。 NUNIT 项目和包装类都使用 log4net 1.2.10.0。
这个包装类可以在我单独的 asp.net web 项目中正常工作,但有些方法不适用于我的 nunit 测试项目。
当我尝试运行基本测试时,出现以下异常
System.BadImageFormatException:无法加载文件或程序集 'log4net,版本=1.2.10.0,文化=中性, PublicKeyToken=692fbea5521e1304' 或其依赖项之一。一个 试图加载格式不正确的程序。
我在 Resharper for VS2010 中运行这些测试
更新
刚刚用 log4net.dll 版本 1.2.11.0 更新了我的包装器和测试项目,一切都开始神奇地工作了!!!我不知道这个最新版本如何解决 1.2.10.0 一直失败的问题
【问题讨论】:
-
您正在加载错误的图像,例如在 x86 架构上使用 x64,反之亦然
-
更新了我的问题。为什么 log4net.dll 可以与 asp.net web 项目一起使用?请告诉我。
-
如果您从测试项目中添加对 log4net 的引用,它仍然会给您错误吗?
-
只是在测试项目中添加引用不会给出任何错误。当我运行测试时,我得到了错误。
标签: c# unit-testing tdd nunit log4net