Skills/Spring

Spring - MockMvc를 이용한 HTTP 메시지 검증

aoaa 2022. 7. 24. 15:59

1. MockMvc

 MockMvc는 웹 애플리케이션을 애플리케이션 서버에 배포하지 않고 Test용 MVC환경를 만들어 요청 및 전송 응답(HTTP request) 기능을 제공해주는 유틸리티 클래스입니다. 


2. 사용 예

  먼저 MockMVc 생성을 해주고, perform() 메서드를 이용해 요청 설정 메서드를 통해서 요청에 대한 설정을 할 수 있습니다.

이 때 요청에 대한 설정은 param, cookie, request * sessionAttr (객체설정), content(요청 본문 설정) 등 다양합니다. 

 

2.1 .andExpect

 .andExpect() 메서드는 응답을 검증하는 메서드로 뒤에 패러미터에 따라 검증하는 값을 바꿀 수 있습니다.

isOk() : 200, isNotFound() : 404 등.. HTTP 응답 메시지를 검증할 수 있습니다.

 status().isOk()의 의미는 status() : HTTP 상태코드를 검증하고 예상값으로 HTTP 200 메시지를 예상하는 것이고,

content().string(hello)의 경우는 content() -> 응답 본문내용을 검증하며 예상 값으로 hello를 return 하는지 검증하게 되는 것입니다.

 

hello_return 메서드를 실행해보면 결과는 다음과 같습니다.

검증용으로 사용했던 status().isOk(), content().string(hello) 모두 테스트를 통과했음을 확인할 수 있었습니다. 

 

 

 

 

참조

더보기

'Skills > Spring' 카테고리의 다른 글

Spring - 테스트 코드(TDD) 작성  (0) 2022.08.02
Spring - Spring Web Layer  (0) 2022.07.27
Spring - @RunWIth, @ExtendWith  (0) 2022.07.22
Spring - 의존관계 주입  (0) 2022.07.12
Spring - @ResponseBody를 이용한 데이터 반환(API)  (0) 2022.06.08