我正在尝试使用对COM接口(interface)具有依赖性的对象进行TDD。我虽然要在进行开发测试时模拟COM接口(interface),但实际上要在集成测试中做到这一点。

但是,我无法模拟COM接口(interface),我尝试使用Moq,它引发了一个异常:



其他框架有可能吗?
您如何使用依赖于COM的对象进行TDD?

在此先感谢!或代表

最佳答案

我建议您对COM对象的接口(interface)拥有所有权,这是依赖性反转原则发挥作用的地方。

如果您无权访问源,则必须创建自己的用于包装COM对象的抽象,否则,您将在整个代码中进行第三方调用。

[编辑]

现在应该可以模拟抽象了。包装程序的实际实现将COM对象作为HAS-A关系。

然后,您将需要对实现进行集成测试。

您需要将COM对象本身视为类似于数据库或图形呈现引擎或Web服务。

10-07 19:12
查看更多