我无法使用nunit测试我的log4net库。我阅读了谷歌返回的搜索结果,但无法理解。
这是我正在犯的错误。
System.IO.FileNotFoundException :无法加载文件或程序集“log4net、Version=1.2.10.0、Culture=neutral、PublicKeyToken=692fbea5521e1304”或其依赖项之一。系统找不到指定的文件。
在我的nunit测试项目中,我添加了更正log4net dll的引用,其他项目都在使用并添加了配置文件,但没有成功。
我的控制台应用程序和使用log4net libaray的测试web应用程序工作正常。
我似乎只对log4net单元测试项目有问题。
如何开始使用涉及log4net库的简单nunit测试。
发布于 2012-05-03 20:33:26
您应该接受任何您想要测试的ILog。然后,您应该模拟它,并将它传递给您想要测试的任何内容。log4net的版本根本不重要。您的测试甚至不应该知道log4net的存在。
使用Rhinomocks,这将是:
MockRepository mocks = new MockRepository();
ILog mockLog = mocks.DynamicMock<ILog>();另外,您也可以使用存根:
ILog mockLog = MockRepository.GenerateStub<ILog>();发布于 2012-05-02 07:39:13
检查测试项目和测试引用的项目的Version of log4net.dll是否相同(顺便说一句,log4net的最新版本为1.2.11.0)。还请验证Copy Local是否设置为true。
如果您涉及的是log4net库,那么这可能是集成测试,而不是单元测试。
发布于 2012-05-27 17:00:10
再次检查您所包含的运行时log4net.dll文件。看起来它无法与项目的.NET运行时CLR相匹配。检查应用程序的目标网络版本(Project -> Properties),并确保它与log4net.dll的目标版本相匹配。注: log4net的1.2.11版本包含高达4.0版本的二进制文件,并注意到客户端配置文件版本与完整版本不同,需要它们自己的特定dll文件。
https://stackoverflow.com/questions/10406284
复制相似问题