[java] Mockito를 사용하여 메소드 호출 시 예외를 발생시키지 않고 테스트하는 방법은?
모키토(Mockito)는 자바에서 유닛 테스트를 쉽게 작성하기 위한 목 프레임워크입니다. 예외를 발생시키지 않고 메소드를 테스트하기 위해서는 Mockito의 when
함수를 사용하여 예외를 던지도록 설정해야합니다.
아래는 예제 코드입니다.
import static org.mockito.Mockito.*;
@Test
public void testMethodWithoutException() {
// 모키토로 목 객체를 생성합니다
MyClass myClassMock = mock(MyClass.class);
// 예외를 발생시키지 않도록 설정합니다
when(myClassMock.method()).thenReturn("Expected Result");
// 테스트 코드 작성
// ...
// 메소드 호출이 예상한대로 수행되었는지 검증합니다
verify(myClassMock).method();
}
위의 예제에서는 MyClass
라는 클래스에 있는 method
메소드를 테스트합니다. when(myClassMock.method()).thenReturn("Expected Result")
코드를 사용하여 method
메소드가 호출되었을 때 예외를 발생시키지 않고 “Expected Result”라는 값을 반환하도록 설정합니다.
테스트 코드를 작성한 후 verify(myClassMock).method()
코드를 사용하여 메소드 호출이 예상한대로 수행되었는지를 검증합니다. 이를 통해 예외를 발생시키지 않고 메소드가 정상적으로 동작하는지 확인할 수 있습니다.
추가로, 필요에 따라 thenReturn
대신 thenThrow
함수를 사용하여 목 객체가 특정 예외를 던지도록 설정할 수도 있습니다. 이를 통해 예외 상황을 테스트할 수 있습니다.
더 자세한 내용은 Mockito의 공식 문서를 참조하시기 바랍니다.
참고문서: Mockito Documentation