Controller Unit Test

컨트롤러 테스트 범위

HTTP 서버를 띄우지 않고 컨트롤러 메서드를 직접 호출하면, 라우트 진입 후 서비스에 위임하는 얇은 책임을 빠르게 확인할 수 있다.

컨트롤러 단위 테스트 구성

TestingModule
1

컨트롤러 등록

`controllers`에 AppController를 넣어 테스트 대상 인스턴스를 만든다.

2

서비스 대체

AppService 토큰은 `useValue`로 목 객체를 주입해 외부 로직을 고정한다.

3

메서드 호출

`getHello()`나 `sumNumbers()`를 직접 실행해 반환값을 확인한다.

4

행위 검증

서비스 목이 기대한 인자로 한 번 호출됐는지 Jest matcher로 검증한다.

arrange compile call assert clear