java – 如何模拟Object.getClass?

前端之家收集整理的这篇文章主要介绍了java – 如何模拟Object.getClass?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个 Java项目,想要为DTO中的一个.equals方法编写一个单元测试.在.equals方法中,由被测对象调用的.getClass()方法.我想嘲笑这个,但我不知道它想要什么类型的对象.我试过了,

.当(mockRoomInv.getClass())thenReturn(RoomInv.class);

但确实没有做任何事情. getClass的返回类型是什么,如何操作?

解决方法

Object.getClass()是一个最终的方法,所以你不能用Mockito模拟它.

您可以模拟静态和最终的方法(如此),甚至使用Powermock的私有方法(这是一个非常酷的工具);

http://code.google.com/p/powermock/

您可以使用它与Mockito,如下所述:

http://code.google.com/p/powermock/wiki/MockitoUsage13

在那里你会发现一些有用的例子.

猜你在找的Java相关文章