Spring Boot는 @RestClientTest를 통해 클라이언트의 입장에서 서버에 REST 관련 테스트를 지원한다.
REST API의 경우 일반적으로 JSON 형태로 데이터를 돌려준다.
기본적으로 @RestClientTest는 Jackson, GSON(Google-gson), Jsonb 자동설정을 지원한다.
대표적인 JSON 라이브러리인 Jackson은 대용량 JSON 데이터에 강점이 있으며 GSON은 구글에서 만든 Json Mapper로써 가볍다는 점이 특징이다.
@RestClientTest 어노테이션을 통해 테스트 대상이 되는 빈을 주입하면 MockRestServiceServer라는 가상의 서버를 만들어 데이터를 반환하는 방식이다. 실제 서비스를 호출하는 것이 아닌 JSON 파일를 로드하거나 데이터를 미리 정의해둔다.