最佳答案
在我的项目中有一些静态 util 方法,其中一些只是传递或抛出异常。有很多关于如何模拟具有除 void 之外的返回类型的静态方法的示例。但是我怎样才能模仿一个静态方法,返回 void 只是“ doNothing()
”?
非无效版本使用以下代码行:
@PrepareForTest(StaticResource.class)
...
PowerMockito.mockStatic(StaticResource.class);
...
Mockito.when(StaticResource.getResource("string")).thenReturn("string");
但是,如果应用于返回 void
的 StaticResources
,则编译将抱怨 when(T)
不适用于 void..。
有什么想法吗?
变通方法可能是让所有静态方法返回一些 Boolean
以获得成功,但我不喜欢变通方法。