@RestControllerTest

ezi·2024년 1월 17일

REST를 위한 단위 테스트
rest 동작을 확인하기 위해서는 두 가지 형태로 살펴볼 수 있다.

일단 일반적인 호출이 되는가에 대한 것은 앞서 살펴봤던 Controller Test와 유사하다. 추가로 생각할 만한 것은 응답의 타입에 대한 정도이다.

andExpect(content().contentType(MediaType.APPLICATION_JSON))

하지만 REST는 model이나 session에 데이터를 담지 않기 때문에 어떤 정보가 전달되었는지 즉 내용을 확인하기 위한 방법이 필요하다. 이를 위해 RestController의 단위 테스트에는 com.jayway.jsonpath가 주로 사용된다.

$ : 전달받은 json 객체의 root element
$.name root element의 name 속성
$.hobby[2] root element 중 hobby 속성이 배열이고 2번 index 요소
$.hobby[2].name root element의 hobby 속성 중 2번 index의 name 속성
$.hobby.length() root element의 hobby 속성의 길이

profile
차곡차곡

0개의 댓글