더북(TheBook)

일반적인 JUnit 테스트처럼 인수 테스트를 시작한다.

테스트 케이스 이름이 사용자 스토리 전체나 일부를 반영한다.

애플리케이션을 시작하고 몇 가지 고정된 데이터(여기서는 사용자와 목록)를 설정해야 한다.

이 테스트의 핵심은 사용자가 애플리케이션에서 목록을 가져오는 것을 시뮬레이션하는 것이다. 아직 ToDoList 타입을 정의하지 않았으므로 이 테스트 코드는 컴파일되지 않는다.

여기에서 목록 이름이 예상한 것과 같은지 확인한다.

이것이 서버를 질의하는 방법이다. 참고로 Http4k에서와 마찬가지로 HTTP 클라이언트와 서버는 똑같은 HttpHandler 함수 인터페이스를 구현한다. HTML 파싱에 대해서는 나중에 다루겠다.

이렇게 서버를 시작하고, 현재 메인 함수에 있는 로직을 Zettai라는 타입으로 추출할 계획이다.

 

테스트를 작성했지만 컴파일조차 되지 않는다! 이게 어떻게 도움이 될까? 테스트를 작성하는 것만으로도 애플리케이션 디자인에 대해 좋은 방향을 잡을 수 있다. 하지만 책만 읽어서는 이 점을 완전히 이해할 수 없다. 직접 해봐야 한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.