어떤 종류의 테스트를 작성할지 결정하는 방법
-
새로운 기능을 추가하거나 버그를 수정할 떄 도메인 모델을 크게 변경할 필요가 없다.
-
도메인 모델을 변경해야하는 경우 더 낮은 결합과 더 높은 커버리지를 제공하므로 서비스에 대한 테스트를 작성하는게 더 좋다.
-
새로운 프로젝트를 시작하거나 아주 어려운 특정 문제를 다뤄야 한다면 도메인 모델에 대한 테스트를 다시 작성해서 더 나은 피드백을 얻고 의도를 더 명확히 설명하는 테스트를 작성하는 것이 낫다.
마무리
-
특성상 엔드투엔드 테스트를 하나씩 마든다는 목표를 세워야 한다. -> 어떤 특성이 잘 작동하는지 보고 움직이는 모든 부품이 서로 잘 연결되어 움직이는지 살펴보는 것이다.
-
테스트 대부분은 서비스 계층을 사용해서 만드는 것을 권한다. -> 이런 테스트는 커버리지, 실행 시간, 효율 사이를 잘 절충할 수 있게 해준다.
-
도메인 모델을 사용하는 핵심 테스트를 적게 작성하고 유지하는 것을 권한다. -> 도메인 테스트는 좀 더 커버리지가 작고, 더 깨지기 쉽다. 하지만 이런 테스트가 제공하는 피드백이 가장 크다. -> 이러한 테스트를 서비스 계층 테스트로 대신할 수 있으면 삭제하는 것이 낫다.
-
오류 처리도 특성으로 취급하자! -> 각 기능의 정상 경로만 테스트하고 모든 비정상 경로를 테스트하는 엔드투엔드 테스트도 유지하면 된다는 의미이다.
참고 문헌
>> Home