[java] Mockito의 Stubbing이란 무엇인가?
예를 들어, 다음은 Mockito를 사용하여 Stubbing하는 간단한 예제입니다.
// 인터페이스나 클래스의 가짜 구현체를 생성합니다
MyClass myClass = mock(MyClass.class);
// 메서드가 호출될 때 반환할 가짜 값을 설정합니다
when(myClass.myMethod()).thenReturn("가짜 값");
// 특정한 인자에 대한 반환값을 설정할 수도 있습니다
when(myClass.myMethodWithArgs("인자")).thenReturn("다른 가짜 값");
위의 코드에서 myMethod
가 호출될 때 “가짜 값”을 반환하도록 설정했으며, myMethodWithArgs
에 “인자”가 전달될 때 “다른 가짜 값”을 반환하도록 설정했습니다.
Stubbing은 테스트 중에 특정한 시나리오를 시뮬레이션하고, 특정한 상태나 조건에 따른 행동을 정의하는 데 사용됩니다.
참고자료:
- Mockito 공식 문서
- Baeldung, “A Guide to Mockito and JUnit Annotations” (https://www.baeldung.com/mockito-annotations)
- “Mockito 유닛 테스트: 가짜 객체 만들기” (https://www.vogella.com/tutorials/Mockito/article.html#mockito_intro)