[java] Mockito를 사용하여 테스트 케이스 작성하기
Mockito는 자바에서 모의 객체를 만들고 테스트하는 데 사용되는 오픈 소스 테스트 프레임워크입니다. 이 프레임워크를 사용하면 실제 객체를 사용하는 것이 아니라 테스트를 위해 가짜 객체를 만들어 사용할 수 있습니다. 이를 통해 의존성을 가진 객체를 테스트할 때 발생하는 문제를 간단하게 해결할 수 있습니다.
Mockito의 기본 개념
Mockito를 사용하면 mock()
메서드를 사용하여 모의 객체를 만들고, 해당 객체의 동작을 설정할 수 있습니다. 이후 모의 객체를 사용하여 실제 객체의 메서드 호출과 상호작용을 테스트할 수 있습니다.
Mockito를 사용한 테스트 케이스 작성 예시
다음은 Mockito를 사용한 테스트 케이스 작성의 예시입니다.
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.verify;
public class CalculatorTest {
@Test
public void testAdd() {
// 모의 객체 생성
CalculatorService mockCalculator = mock(CalculatorService.class);
// 모의 객체의 동작 설정
when(mockCalculator.add(1, 2)).thenReturn(3);
// 테스트 대상 객체에 모의 객체 주입
Calculator calculator = new Calculator(mockCalculator);
// 메서드 호출
int result = calculator.add(1, 2);
// 모의 객체의 메서드가 제대로 호출되었는지 확인
verify(mockCalculator).add(1, 2);
// 결과 확인
assertEquals(3, result);
}
}
위 예시에서는 Calculator
클래스를 테스트하는 과정에서 CalculatorService
라는 의존성을 가진 경우를 가정하여 테스트 케이스를 작성했습니다. Mockito를 사용하여 CalculatorService
의 메서드를 모의하여 실제 객체를 사용하지 않고 테스트를 수행할 수 있습니다.
마무리
Mockito를 사용하여 테스트 케이스를 작성하면 의존성을 가진 객체를 효과적으로 테스트할 수 있습니다. 이를 통해 소프트웨어의 안정성과 신뢰성을 높일 수 있습니다.
더 많은 Mockito의 기능과 사용법은 Mockito 공식 홈페이지에서 확인하실 수 있습니다.