Junit 莫基托深茬

Junit 莫基托深茬,junit,mocking,mockito,Junit,Mocking,Mockito,我最近开始使用Mockito深存根。我在尝试深度截取哈希图时遇到了一个路障。它扔了很多东西 at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.getDeclaredMethod(Class.java:2128) at java.util.HashMap.get(HashMap.java:556) at sun.reflect.Reflection.filterM

我最近开始使用Mockito深存根。我在尝试深度截取哈希图时遇到了一个路障。它扔了很多东西

at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
    at java.lang.Class.getDeclaredMethod(Class.java:2128)
    at java.util.HashMap.get(HashMap.java:556)
    at sun.reflect.Reflection.filterMethods(Reflection.java:291)
下面是这段代码的起点。

CloudPageBlob cloudPageBlob = Mockito.mock(CloudPageBlob.class, Mockito.RETURNS_DEEP_STUBS);
    Mockito.when(cloudPageBlob.getUri().toString()).thenReturn("id");
    Mockito.when(cloudPageBlob.getName()).thenReturn("name");
    Mockito.when(cloudPageBlob.getProperties().getLength()).thenReturn(10L);
    Mockito.when(cloudPageBlob.getMetadata().get("region")).thenReturn("region");
    Mockito.when(cloudPageBlob.getMetadata().get("performanceTierName")).thenReturn("PREMIUM");

我使用的Mockito版本是Mockito core 2.2.0

Mockito现在已经是2.8版了。只是为了确定;我想试试最新的。除此之外:阅读。试着想出一个简单的例子,让我们自己重新思考这个问题。您当前的输入不完整。谢谢。升级到2.8.47解决了我的问题。为什么要模拟哈希映射?模拟通常用于难以进行单元测试的服务。如果您发现自己在模仿一个简单的库类型或pojo,那么您的软件或测试策略中存在设计错误。