我正在开发一个 Java 项目,想要为 DTO 中的 .equals 方法编写单元测试。在 .equals 方法中,有一个 .getClass() 方法由两个被测试对象调用。我想模拟这个,但我不知道它想要什么类型的对象。我试过,
when(mockRoomInv.getClass()).thenReturn(RoomInv.class);
但肯定没有做任何事情。 getClass 的返回类型是什么?如何操作它?
As Object.getClass()
是最终的,你不能用 Mockito 模拟该方法。我强烈建议您重构代码以以另一种方式注入类。如果这不可能,你可以尝试一下电源模拟 http://code.google.com/p/powermock/,您可以在其中模拟任何最终方法。Object.getClass()
有点特殊,所以一定要设置MockGateway.MOCK_GET_CLASS_METHOD = true
在 powermock 中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)