본문 바로가기
스파르타 내배캠

[TIL] #37. MockMvc

by saemsaem 2024. 6. 18.


 

 [ MockMvc ] 

: 실제 객체와 비슷하지만 테스트에 필요한 기능만 가지는 가짜 객체를 만들어서 애플리케이션 서버에 배포하지 않고도 스프링 MVC 동작을 재현할 수 있는 클래스

 

JUnit 5

: 단위테스트 프레임워크

JUnit5 = JUnit Platform + JUnit Jupiter + JUnit Vintage
  - JUnit Platform : 테스트를 시작하기 위한 런처 제공
  - JUnit Jupiter : 테스트 작성을 위한 새로운 프로그래밍 모델과 확장 모델 조합
  - JUnit Vintage : Junit 4와 Junit3가 잘 동작하도록 지원

// build.gradle
dependencies {
    // JUnit5
    testImplementation("org.springframework.boot:spring-boot-starter-test")
    testImplementation 'org.mockito:mockito-core:4.8.0'
}

test {
    useJUnitPlatform()
}

 

MockMvc의 메서드

1. perform( )
  : 요청을 전송하는 역할. 결과로 ResultActions 객체를 받으며, 이 객체는 리턴값을 검증하고 확인할 수 있는 andExpect( )메서드를 제공.

2. post("/api/recipe/")
  : HTTP 메서드를 결정하고, 인자로 경로를 보내줌

3. params(info)
  : 키 = 값의 파라미터를 전달. 여러개일 때는 params( ), 하나일 때는 param( )

4. andExpect( )
  : 응답을 검증하는 역할. 상태코드 status( ), 리턴하는 뷰 이름 검증 view( ), 리다이렉트 응답 검증 redirect( ), 모델 정보 검증model( ), 응답 정보 검증 content( )

5. andDo(print( ))
  : 요청/응답 전체 메세지 확인

'스파르타 내배캠' 카테고리의 다른 글

[TIL] #39. 회원가입 구현  (0) 2024.06.20
[TIL] #38. Validation  (0) 2024.06.18
[TIL] #36. AOP  (0) 2024.06.13
[TIL] #35. Test Code - 단위테스트  (0) 2024.06.12
[TIL] #34. Web Application, Servlet  (0) 2024.06.10