2010-04-20 35 views
2

我知道我不需要Typemock,但是,像MoQ这样的东西,我需要使用适配器模式来通过接口为我不控制的代码创建模拟。代码生成工具,为单元测试创​​建C#适配器类?

例如,TcpClient是一个.NET类,所以我使用适配器模式来启用这个对象的模拟,b/c我需要该类的接口。然后生成接口ITcpClient,然后可以通过TcpClientAdapter类来实现,这只是简单的vanilla适配器模式实现。

我正在寻找一种工具来自动执行此操作(创建接口和适配器),我会认为那里有一个地方? (或者是每个人都只是手工编码这些)

+0

你打算如何让TcpClient实现你的界面? – 2010-04-20 13:31:38

+0

@Lasse - 在我的问题中指出,使用适配器模式。请参阅这里获取更多信息:http://www.dofactory.com/Patterns/PatternAdapter.aspx – RyBolt 2010-04-20 14:09:25

回答

2

更换任何.NET方法与自己的 委托” - 痣

我的手代码我的,但退房Moles。它将允许你嘲笑任何东西,静态方法,你的名字。这不是一个代码生成器,但是你必须编写代码/返回值,但是你不需要编写适配器类。相反,您只需说明您想要每次测试覆盖的内容。

这是新的,我没有亲自使用它,但从我看到的视频看起来很有前途。特别是对于麻烦的领域,例如静态API或不受您控制的类。

+0

这绝对是Typemock的一个很好的选择,因为它们似乎都具有相同的目标,即隔离。 MS研究项目给了我发拉的经验,但我会努力让它工作。 – RyBolt 2010-04-20 16:19:34