기본적인 테스트 방법


  • @SpringBootTest Annotation
    • 해당 Annotation을 쓰면, @Autowired 를 통해 별도의 의존성 주입 없이 테스트에 필요한 객체를 가져다 쓸 수 있다.
      • AccountService는 AccountRepository 를 주입받고 있기 때문에 연쇄적으로 의존성을 주입해줄 필요 없음.
  • @DisplayName()
    •  테스트 목록에 표기 되는 이름을 원하는 이름으로 변경해줄 수 있다.
  • @BeforeEach
    • 하위의 테스트들을 실행하기 전 먼저 실행 해주는 로직으로 간편하게 초기값을 세팅해줄 수 있다.
      • ex) 테스트 1의 계좌를 먼저 생성해 id 값 1을 준다.
      • ex) 테스트 2의 계좌를 먼저 생성해 id 값 2를 준다.
      • BeforeEach 가 없다면 여러개의 테스트에 계좌를 생성하는 로직을 모두 포함 시켜줘야함.

Mockito 로 테스트 방법

 

  • @ExtendWIth(MockitoExcention.class)
    • Mockito 사용을 위한 Annotation
    • @Mock
      • 주입 시켜야할 Mock 만들기
    • @InjectionMocks
      • 위에서 만든 Mock 을 해당 객체에 주입 하기

이후 해당 Mock을 통한 테스트 진행 가능


WebMvcTest 로 Controller 테스트 하는 모습

 

+ Recent posts