통합 테스트는 다른 팀이 만든 모듈, 외부 API나 서비스, 네트워크, 데이터베이스, 스레드 등 실제 의존성을 완전히 제어할 수 없는 상태에서 작업 단위를 테스트하는 것이다.
요약하자면 통합 테스트는 실제 의존성을 사용하고, 단위 테스트는 작업 단위를 의존성에서 격리시켜 항상 일관된 결과를 받을 수 있도록 하여 작업 단위의 모든 측면을 쉽게 조작할 수 있게 한다.
이제 1.7.2절의 체크리스트를 통합 테스트에 적용해 보고, 실제 단위 테스트에서 달성하고자 하는 목표를 같이 살펴보자.