육각형 아키텍처의 각 계층에 가장 적합한 테스트가 어떤 종류인지 살펴보자
도메인 엔티티 - 단위 테스트
유스케이스 - 단위 테스트
- 아웃고잉 포트를 모킹하여 통합 테스트에 가깝지만 단위 테스트를 구성할 수 있다.
- 목으로 작업하고 있고 실제 의존성을 관리해야 하는 것은 아니기 때문에 완전한 통합 테스트에 비해 만들고 유지보수하기가 쉽다.
- 트랜잭션 관리
웹 어댑터 - 통합 테스트
- 웹 어댑터에서는 앞의 모든 단계들이 기대한 대로 동작하는지 검증해야 한다.
영속성 어댑터 - 통합 테스트
- 비슷한 이유로 영속성 어댑터의 테스트에는 단위 테스트보다 통합 테스트를 적용하는 것이 합리적이다.
- 단순히 어댑터의 로직만 검증하고 싶은 게 아니라 데이터베이스 매핑 도 검증하고 싶기 때문