我试图用一个依赖于COM接口的对象做TDD.我虽然在进行开发测试时嘲笑COM接口,但在集成测试中做到了.
但是,我无法模拟COM接口,我尝试使用Moq,它会引发异常:
System.TypeLoadException未被用户代码处理Message =无法从程序集'DynamicProxyGenAssembly2,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null'加载类型'Castle.Proxies.iTunesAppProxy'.该类型被标记为符合类型等效的条件,但它具有通用参数,或者它不是结构,COM导入的接口,枚举或委托
是否可以与其他框架一起使用?你如何使用COM依赖对象进行TDD?
在此先感谢!或代表
在我的项目中,我需要同时使用Castle.Windsor和Moq dll.Windsor要求Castle.Core也在项目中引用.
当我尝试使用Castle.Core中的方法时问题开始:
Castle.DynamicProxy.Generators.AttributesToAvoidReplicating.Add(...);
问题1: 如果我使用NET40文件夹中的Moq.dll,我得到了错误"类型'Castle.DynamicProxy.Generators.AttributesToAvoidReplicating'存在于'...\Windsor\dotNet40\Castle.Core.dll'和'..\MOQ\NET40\Moq.dll'"
问题2: 如果我使用"NET40-RequiresCastle"文件夹中的Moq.dll,这在逻辑上是我的情况,我得到版本冲突 - Moq.dll使用Castle.Core,Version = 2.5.0.0,但Windsor使用Castle.Core,Version = 2.5.1.0