개발 공부 기록/07. TIL

스프링 부트 핵심가이드 TIL - 5장 (테스트 코드 작성하기)

박세류 2023. 10. 7. 01:11

✍학습 키워드

테스트 코드 작성하기

테스트 코드란?

  • 우리가 작성한 코드나 비즈니스 로직 자체를 테스트하기 위해 작성한 코드를 의미한다.
  • 테스트 코드를 작성하는 이유 → 개발 과정에서 문제를 미리 발견할 수 있다.
  • Given-When-Then 패턴으로 테스트 코드를 작성 할 수 있다.

리포지토리 객체의 테스트

  • 리포지토리는 개발자가 구현하는 레이어 중에서 가장 데이터베이스와 가깝다.
  • findById(), save()등의 기본 메서드에 대한 테스트는 의미가 없다. (검증 되었기 때문에)
  • 때문에 db를 연동한 테스트는 테스트 데이터를 제거하는 코드까지 포함해서 작성하는 것이 좋다.

📝새로 배운 개념

JUnit을 활용한 테스트 코드 작성

  • JUnit은 어노테이션 기반의 테스트 방식을 지원하는 대표적인 테스트 프레임워크

Gson

  • Gson은 구글에서 개발한 JSON 파싱 라이브러리로서 자바 객체를 JSON 문자열로 변환하거나 JSON 문자열을 자바 객체로 변환하는 역할을 한다.

@DataJpaTest

  • JPA 관련된 설정만 로드해서 테스트를 진행한다.
  • 기본적으로 @Transactional 어노테이션을 포함하고 있어 테스트 코드가 종료되면 자동으로 데이터베이스의 롤백이 진행된다.

테스트 주도 개발 TDD

  • TDD란 테스트 주도 개발, 테스트 코드를 먼저 작성한 후 테스트를 통과한 코드를 작성하는 과정을 반복하는 개발 방식이다.
    • 실패 테스트 작성 → 테스트를 통과하는 코드 작성 → 리팩토링
728x90