Mockito:模拟方法引发异常

时间:2019-02-04 10:17:55

标签: java mockito

我正在尝试模拟此方法:

boolean login() throws SftpModuleException;

模拟代码为:

Mockito
    .when(this.sftpService.login())
    .thenReturn(true);

由于login()引发了SftpModuleException,编译器告诉我必须处理此异常。

由于此异常,是否有任何解决方法将永远不会抛出?

2 个答案:

答案 0 :(得分:2)

我认为您可以将其添加到方法签名中

@Test
public void test() throws SftpModuleException {

  Mockito
    .when(this.sftpService.login())
    .thenReturn(true);
  // code
}

答案 1 :(得分:2)

考虑让您的@Test方法只声明要抛出的异常,甚至声明throws Exception

@Test
public void testFoo() throws Exception {
  // mocking and test code here
}