: 지속 가능하고, 유지/보수하기 쉬운, 이해할 수 있고 복잡하지 않은 코드를 짜는 방법과 아이디어
이 코드 베이스는 "Code That Fits in Your Head"에 사용된 예제 코드로써, 레스토랑 예약 시스템을 API로 구현한 것처럼 동작하게 만들어졌습니다.
일상적인 개발 작업은 Restaurant 라는 이름의 Visual Studio 솔루션에서 수행해야 합니다. 이 솔루션은 프로덕션 코드와 (빠른) 유닛 테스트를 포함하고 있습니다. 따라서, 테스트 시간이 비교적 짧기 때문에 비주얼 스튜디오의 테스트 러너를 사용하는 경우에도 충분히 테스트 주도 개발을 진행할 수 있을 것입니다.
Build라는 이름의 비주얼 스튜디오 솔루션은 추가적으로 자동화된 데이터 베이스를 사용하는 테스트가 포함되어 있습니다.
이 솔루션은 build.sh
를 통해서 동작시킬수도 있습니다.
이 솔루션에 있는 통합 테스트는 시간이 더 오래 걸리기 때문에 일상적인 개발에서는 이 솔루션을 사용하지 않아야 합니다. 반면 코드와 데이터베이스 간의 인터페이스를 리팩터링하는 경우에는 이 솔루션을 로드해서 사용하는 것이 좋습니다. 또한 새로운 통합 테스트 케이스를 추가해야 할 때도 유용할 것입니다.
데이터베이스 통합 테스트는 각각의 테스트 케이스마다 SQL 서버의 데이터베이스를 자동으로 생성하고 삭제합니다. 따라서, 따로 뭔가를 구성할 필요는 없지만, SQL Server Express가 설치되어 있어야만 합니다.