首页 > 解决方案 > Mockito doNothing with Mockito.mockStatic

问题描述

I'm using Mockito, along with mockito-inline for mocking static methods. I'm trying to apply doNothing or similar behavior, to a static void method. The following workaround work, but I think that there should have a more convenient way to achieve this with less code.

try (MockedStatic<UtilCalss> mock = Mockito.mockStatic(UtilCalss.class)) {

     mock.when(() -> UtilCalss.staticMethod(any()))
            .thenAnswer((Answer<Void>) invocation -> null);

}

If it's a non-static method, we could simply do:

doNothing().when(mock).nonStaticMethod(any());

But I want to do the same for a static method.

标签: mockitojunit5

解决方案


You don't need to stub that call.

doNothing is a default behaviour of a void method called on a mock.


推荐阅读