如何使用mockito Junit模拟方法的本地实例

时间:2013-12-23 09:24:04

标签: java junit mockito

我在CertainBean类中有以下方法:

public boolean isOn() {
        InterfaceBean Bean = getBean();
        return Bean.hasBeenSetOn(Param1, Param2);
    }

现在我想

assertEquals(CertainBeanInstance.isOn(),true);

为了做到这一点,我首先需要模拟IntefaceBean。我怎么能这样做?

提前致谢

1 个答案:

答案 0 :(得分:6)

您需要使用Mockito 1.8中的间谍并仅模拟方法getBean

CertainBean bean = spy(new CertainBean());

when(bean.getBean()).thenReturn(yourInterfaceMockedBean);

在这个有用的链接中有更多关于模拟真实部分对象的信息: http://blog.javabien.net/2009/06/21/mockitos-partial-mocks-testing-real-objects-just-got-easier/

这里是Mockito 1.8的变化 https://code.google.com/p/mockito/wiki/ReleaseNotes#Changed_in_1.8.0_(23-07-2009)