== 실습
=== 개요
WebMvcTest를 사용하여 Controller의 단위 테스트를 작성합니다.

=== 절차
. CatalogController 클래스에는 핸들러 메서드가 있습니다. 테스트 클래스를 생성하고, 각각의 메서드를 테스트하는 테스트 메서드를 작성해 봅시다.

. OrderController 클래스의 테스트 클래스를 생성하고, validateInput 메서드에 대해 입력 확인이 제대로 이루어지고 원래의 입력 화면으로 돌아가는지 테스트하는 테스트 메서드를 생성합니다. 세션 스코프의 Bean으로 사용하는 OrderSession 객체는 Mock 객체를 사용해야 합니다(동작 지정은 필요 없음).

=== 옵션
. OrderController 클래스의 order 메서드(주문을 확정하는 핸들러 메서드)를 테스트하는 테스트 메서드를 만들어 보자. 최소한 리다이렉트 URL과 플래시 스코프의 내용만 확인할 수 있으면 됩니다.

. 주문을 확정할 때 재고가 부족할 경우, 재고 부족 화면이 표시되는지 테스트하는 테스트 메소드를 작성해 봅시다.