Mockito静态方法无返回值
时间: 2023-07-09 15:21:21 浏览: 646
有参数无返回值的函数
5星 · 资源好评率100%
Mockito 不支持直接 mock 静态方法,但是你可以使用 PowerMockito 来 mock 静态方法并指定它无返回值。以下是一个示例代码:
```
@RunWith(PowerMockRunner.class)
@PrepareForTest(YourClassWithStaticMethod.class)
public class YourTestClass {
@Test
public void testYourMethod() {
PowerMockito.mockStatic(YourClassWithStaticMethod.class);
doNothing().when(YourClassWithStaticMethod.class);
YourClassWithStaticMethod.yourStaticMethod(); // 调用静态方法
// 在这里进行你的测试
}
}
```
在这个示例中,我们使用 PowerMockito 的 `mockStatic()` 方法来 mock 静态类 `YourClassWithStaticMethod`,然后使用 `doNothing()` 方法来指定当这个静态方法被调用时什么也不做。最后,在测试代码中调用这个静态方法并进行你的测试。
需要注意的是,使用 PowerMockito 来 mock 静态方法会增加代码的复杂度,并且有可能会导致一些奇怪的问题。因此,应该尽量避免使用静态方法来编写可测试的代码。
阅读全文