mockmvc 예제

이 스프링 부트 통합 테스트 예제에서는 MockMvc 클래스를 사용하여 Spring MVC 통합 테스트를 작성하는 방법을 배웠습니다. 그는 HTTP GET, POST, PUT 및 DELETE API에 대한 JUNit 테스트를 작성하는 방법을 배웠습니다. 다음은 전체 작업 예제의 개요입니다. 페이지 하단에서 전체 프로젝트를 다운로드할 수 있습니다. 나는 내 테스트에서 그것을 변화시켜야하기 때문에 양식을 작성 할 때 속성 경로를 언급 할 수있는 것이 낫다고 추론했습니다. 예를 들어 누락된 입력에 대한 유효성 검사 오류가 있는지 확인하고 조건을 시뮬레이션하기 위해 속성 경로를 제외할 수 있습니다. 또한 @Before 메서드에서 모델 특성을 쉽게 빌드할 수 있습니다. 먼저 Mockito를 구성하고, 서비스에서 반환된 응답을 모의하고, 모의 객체를 나머지 서비스 컨트롤러에 삽입하는 방법을 보여 주면서 시작합니다. 다음으로 각 단위 테스트를 개별적으로 설명합니다. 그런 다음 전체 테스트 클래스에 대한 개요를 보여 드리겠습니다. 페이지 하단에 있는 전체 작업 예제를 다운로드할 수 있으며 모든 서비스 및 단위 테스트와 함께 전체 나머지 서비스가 포함됩니다.

이전 게시물에서 우리는 단위 테스트 스프링 MVC 컨트롤러에 스프링 MVC 테스트 프로젝트를 사용 하 여 보았다. 이 예제는 Mockito를 사용하여 서비스 계층을 모의하여 컨트롤러의 격리된 테스트를 보장했습니다. 이 게시물에서는 테스트의 통합 측면에 초점을 맞출 것입니다. 이 여전히 MockMVC와 스프링 MVC 테스트를 사용 하지만 또한 봄 콩에 대 한 전체 액세스를 제공 하는 WebApplicationContext로드 됩니다. 이에 대한 멋진 부분은 셀레늄이나 Geb와 같은 브라우저 도구를 사용하기 전에 할 수있는 가장 통합 된 테스트를 제공하기 위해 MockMVC 컨테이너와 실제 클래스를 사용한다는 것입니다. 경로 변수 및 매개 변수를 사용하여 요청을 보내는 방법을 보여 드리겠습니다. 또한 적절한 뷰 이름이 확인되었거나 응답 본문이 예상대로 임을 어설션하는 방법을 보여 주는 몇 가지 예제를 따릅니다. 블로그에 대한 감사는 재미있는 예였다.

MockMvcBuilders는 MockMvc, standalonSetup(…)을 설정하는 추가 방법을 제공합니다. 이 방법을 사용하면 전체 WebApplicationContext를 사용할 필요 없이 하나 이상의 컨트롤러를 등록할 수 있습니다. 이 절차를 사용하여 컨트롤러 종속성을 모킹하는 것은 정말 쉽기 때문에 엄격한 단위 테스트 예제에서와 마찬가지로 종속성으로부터 격리된 컨트롤러를 테스트할 수 있습니다.