반응형
Notice
Recent Posts
Recent Comments
관리 메뉴

개키우는개발자 : )

테스트 코드를 이용한 테스트 본문

토비의 스프링 부트 - 이해와 원리/섹션6 - DI와 테스트, 디자인 패턴

테스트 코드를 이용한 테스트

DOGvelopers 2024. 10. 8. 23:03
반응형

요약 및 결론

테스트 코드를 사용한 Spring Boot 애플리케이션 검증 방법을 다루고, JUnit5 및 AssertJ를 사용해 HelloController API의 동작을 검증하는 과정을 설명했습니다.

핵심 내용

  1. 수동 테스트의 한계:

    • 기존에는 서버를 띄우고 직접 HTTP 요청을 보내 응답을 확인하는 방식으로 테스트를 진행했으나, 수동 검증 방식의 번거로움실수 가능성 때문에 자동화된 테스트가 필요함.
  2. 테스트 코드 작성:

    • JUnit5AssertJ를 사용하여 테스트 코드 작성.
    • RestTemplateTestRestTemplate을 사용해 HTTP 요청을 테스트 코드 내에서 자동으로 실행.
    • 세 가지 요소를 검증:
      • 상태 코드 (Status Code): 응답이 200 OK로 왔는지 확인.
      • 헤더 (Headers): Content-Type이 text/plain인지 확인.
      • 바디 (Body): 응답 바디가 Hello Spring인지 확인.
  3. 검증 도구:

    • AssertJ를 사용해 간결하게 테스트 검증 코드를 작성함.
    • 상태 코드나 헤더 값이 예상과 일치하는지 isEqualTostartsWith를 사용해 비교.
    • 바디는 getBody()를 통해 응답 바디가 예상한 값인 Hello Spring과 일치하는지 확인.
  4. 테스트 코드의 장점:

    • 테스트 코드는 수동 검증을 대체할 수 있으며, 코드 수정 후 자동 검증이 가능하여 실수를 방지함.
    • 테스트 템플릿을 사용하여 반복적인 HTTP 요청 및 검증을 코드로 작성해 재사용성과 신뢰성을 높임.
  5. 추가 테스트 필요성:

    • 한 가지 테스트만으로는 코드의 충분한 검증이 어렵기 때문에 다양한 상황을 테스트할 필요가 있음.
    • 추가적인 더 빠르고 간편한 테스트 방법에 대해 다음 강의에서 다룰 예정.

결론:

테스트 코드를 통해 애플리케이션의 HTTP API를 자동으로 검증함으로써, 수동 테스트보다 빠르고 신뢰성 있게 애플리케이션을 확인할 수 있으며, 다양한 시나리오에 대한 추가 테스트가 필요함을 강조.

반응형
Comments