在 Gallio / MbUnit 中运行的测试失败;无法加载 Castle DynamicProxy

问题描述 投票:0回答:1

我有一个 .NET 3.5 程序集,涵盖了大约 4000 MbUnit 测试。我一直在使用 mbunit.cons.exe 程序运行这些程序,没有遇到任何问题。

现在我正在尝试切换到 Gallio(在生成 XML 报告时,mbunit.cons.exe 开始因“内存不足”异常而崩溃)。

在 Icarus 中运行测试时,大多数测试都会失败,但有以下例外:

System.TypeInitializationException:“Rhino.Mocks.MockRepository”的类型初始值设定项引发异常。 --->
System.IO.FileLoadException:无法加载文件或程序集“Castle.DynamicProxy2,版本= 2.0.3.0,文化=中性,PublicKeyToken = 407dd0808d44fbdc”或其依赖项之一。
找到的程序集的清单定义与程序集引用不匹配。
(HRESULT 异常:0x80131040)在 Rhino.Mocks.MockRepository..cctor()

被测程序集确实使用了动态代理。动态代理程序集与被测程序集位于同一目录中。

我尝试将包含程序集的目录放入 Icarus 中的“提示目录”、“应用程序基目录”和“工作目录”字段中,但这不会改变结果。

有没有人成功地同时使用 Gallio 和动态代理,或者有任何关于问题可能是什么的提示?

.net castle-dynamicproxy mbunit gallio
1个回答
0
投票

看起来

Rhino.Mocks
引用了
Castle.DynamicProxy2
的不同版本。它尝试寻找
'Castle.DynamicProxy2, Version=2.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc'
。你能看一下 bin 文件夹中的
Castle.DynamicProxy2
程序集,看看它是否具有相同的版本和
PubliKeyToken

© www.soinside.com 2019 - 2024. All rights reserved.