我当前的任务是等待来自后端(DB)的几个字段,然后在我身边修改它们。后端的变化将需要时间,在此期间,我想创建一个模拟器,并开始我的变化。有没有一种设计模式,有人可以建议,它将帮助我为后端设计一个模拟器,然后,在没有太多代码更改的情况下,允许我移植到真正的后端值?
发布于 2011-03-24 02:05:59
研究一下mockito,它非常棒。基本情况是:
ClassYouAreTesting fake = mock(ClassYouAreTesting.class);
when(fake.callsSomeMethod()).thenReturn(sampleData);
您可能还需要使用一些dependency injection,以便可以将真实对象(在生产过程中)或模拟对象(在测试过程中)传递给函数。
发布于 2011-03-24 02:04:00
一个存根应该足够了。
存根为测试过程中发出的呼叫提供录音应答,通常对测试程序之外的任何内容都不响应。存根还可以记录有关呼叫的信息,例如,电子邮件网关存根可以记住它‘发送’的消息,或者可能只记录它‘发送’了多少消息。
(摘自下面链接的Fowler文章)
Java流行的模拟框架包括:
关于模仿的其他文章:
马丁·福勒(
)
发布于 2011-03-24 02:09:44
完全模仿你的合作者的东西叫做存根。你可以使用一堆框架来轻松构建它: jMock,EasyMock,Mockito等等。存根不是一种设计模式。它是一种用于开发、测试和原型设计的通用思想。
https://stackoverflow.com/questions/5409574
复制相似问题