내일배움캠프 35일차 TIL : Spring - Mockito Test(2)

김원기·2024년 6월 19일

TIL

목록 보기
39/42
post-thumbnail

내일배움캠프 35일차 TIL : Spring - Mockito Test(2)

Mockito 사용법

Mock 객체 의존성 주입

Mockito에서 가짜 객체의 의존성 주입을 위해 사용하는 3가지의 어노테이션

  • @Mock : 가짜 객체를 만들어 반환하는 어노테이션
  • @Spy : Stub하지 않은 메소드들을 원본 메서드 그대로 사용하는 어노테이션
  • @InjectionMocks: @Mock, @Spy로 생성된 가짜 객체를 자동으로 주입하는 어노테이션

메서드 스텁(method stub) 혹은 간단히 스텁(stub)은 기존 코드를 흉내 내거나 아직 개발되지 않은 코드를 임시로 대치하여 다른 프로그래밍 기능을 대리하는 코드를 말합니다.
https://pro-gramming.tistory.com/5

Stub을 통한 결과 처리

의존성이 있는 객체는 가짜 객체를 주입하여 결과를 반환하기 위해 정해진 결과를 준비해야 함

정해진 결과를 위해 Mockito가 제공하는 Stub 메서드는 다음과 같다.

  • doReturn() : 가짜 객체가 특정한 값을 반환해야 하는 경우
  • doNothing() : 가짜 객체가 아무것도 반환하지 않는 경우 (void)
  • doThrow() : 가짜 객체가 예외를 발생시키는 경우

Mockito와 Junit 결합

별도의 테스팅 프레임워크인 Mockito는 JUnit과 결합하기 위해 별도의 작업이 필요하다.

JUnit4 환경에서는 클래스 어노테이션으로

@RunWith(MockitoJUnitRunner.class)

JUnit5 환경에서는

@ExtendWith(MockitoExtension.class)

끝!

출처

profile
혼자 공부하는 블로그라 부족함이 많아요 https://www.notion.so/18067a27ac7e4f4790dde645fb3bf3d3?pvs=4

0개의 댓글