프로젝트

17일차

사랑박 2023. 3. 8. 21:35

오늘은 Part2.게시판서비스 강의의 `API 테스트 정의` 부분을 학습하였다.
 

Spring Data Rest

Spring Data REST를 사용하면 별도의 컨트롤러 없이 Entity와 Repository 인터페이스를 보고 분석해서 자동으로 RESTful API를 제공해준다.
= Entity와 Repository만 만들어주면 API가 자동 생성된다.
 

사용법

의존성 추가 - HAL Explorer은 만든 API를 간단하게 테스트하기 위해 추가한다.

implementation 'org.springframework.boot:spring-boot-starter-data-rest'
implementation 'org.springframework.data:spring-data-rest-hal-explorer'

 
yaml파일 옵션 추가

data.rest:
 base-path: /api
 detection-strategy: annotated

Repository에 @RepositoryRestResource 어노테이션을 추가
 
 

HAL Explorer 사용하기

localhost:8080/api로 접속하면 HAL Explorer 화면이 뜬다.
 

HAL Explorer 사용

 
 

DataRestTest 작성하기

@WebMvcTest
Application Context 완전하게 Start 시키지 않고 web layer를 테스트 하고 싶을 때 @WebMvcTest를 사용한다.
Service, Repository dependency가 필요한 경우에는 @MockBean으로 주입받아 테스트를 진행 한다. 
 
MockMvc
웹 애플리케이션을 서버에 배포하지 않고 테스트용 MVC 환경을 만들어 요청 및 전송, 응답기능을 제공해주는 유틸리티 클래스이다.
 

 

'프로젝트' 카테고리의 다른 글

19일차  (0) 2023.03.10
18일차  (0) 2023.03.09
16일차  (0) 2023.03.07
15일차  (0) 2023.03.06
14일차  (0) 2023.03.05