无法使用 mockito 模拟静态方法

Unable mock static method using mockito

提问人:Chinthakayala Bhanu Prakash 提问时间:12/8/2022 最后编辑:LesiakChinthakayala Bhanu Prakash 更新时间:12/8/2022 访问量:341

问:

try (MockedStatic<EndorsementWS> utilities = Mockito.mockStatic(EndorsementWS.class)) {
    utilities.when(() -> EndorsementWS.invokeEndorsementWS(any(),any(),any()))
            .thenReturn(new HashMap<String,String>());
}

无法模拟具有三个参数的 invokeEndorsementWS 的 ENdorsementWS 类,有人可以检查一下吗?

尝试使用上述代码,但通过真实方法的流程未提供存根行为

Java REST 方法 静态 模拟

评论

0赞 Lesiak 12/8/2022
对受测方法的调用在哪里?

答:

0赞 AhianZhang 12/8/2022 #1

试试这个

try (MockedStatic<EndorsementWS> utilities = Mockito.mockStatic(Mockito.mock(EndorsementWS.class))) {
    utilities.when(() -> EndorsementWS.invokeEndorsementWS(any(),any(),any()))
            .thenReturn(new HashMap<String,String>());
}

你应该先用它来模拟 EndorsementWS 类Mockito.mock()