본문 바로가기

분류 전체보기48

Yagni (You aren’t gonna need it) (feat. 클린 아키텍처) https://martinfowler.com/bliki/Yagni.html 2023. 7. 2.
[단위테스트 2장] 단위 테스트란 무엇인가 2.1 단위테스트란? 작은 코드 조각(단위) 검증 빠르게 수행 격리된 방식으로 처리하는 자동화 테스트 격리라는 주체를 어떻게 보느냐에 따라 고전파와 런던파로 나뉘게 됨. 저자는 고전파의 입장으로 책을 설명하고 있다. 2.2 런던파 vs 고전파 격리주체 단위의 크기 테스트 대역 사용 대상 런던파 단위 단일 클래스 불변 의존성 외의 모든 의존성 고전파 단위 테스트 단일 클래스 또는 클래스의 세트 공유 의존성 런던파 한번에 하나의 클래스를 테스트함 입자성이 좋음, 한번에 한 클래스만 확인 서로 연결된 클래스의 그래프를 테스트하기 좋음 테스트가 어떤 기능이 실패했는지 확인하기 좋음 TDD 설계 방식 하향식 상위 레벨 부터 하위레벨에 대한 것은 목을 만들어서 협력자를 만들어 진행 모든 클래스 구현할 때까지 클래스.. 2023. 7. 2.
[단위테스트 1장] 단위테스트의 목표 소프트웨어 프로젝트의 지속 가능한 성장을 가능하게 하는 것 지속적인 정리와 리팩터링 등과 같이 적절한 관리를 하지 않고 방치하면 시스템이 점점 더 복잡해지고 무질서해진다 테스트가 있다면 이런 문제를 막을 수 있다 → 좋은 단위 테스트를 작성하는 것이 중요하다. 단위 테스트를 작성하는 것은 일종의 투자이고, 최대한의 이득을 얻을 수 있도록 노력해야 한다. 테스트 코드도 코드베이스의 일부이고, 좋은 테스트와 좋지 않은 테스트는 취향이나 선호도의 문제가 아니다. 단위테스트는 프로젝트의 성패를 가르는 중대한 문제이고, 잘못된 테스트 작성은 결국 프로젝트가 진행됨에 따라, 프로젝트의 성패를 좌우할 수 있다. 커버리지 지표 커버리지 지표는 좋은 부정지표이자, 나쁜 긍정지표이다. 커버리지가 낮으면, 개선이 필요하다... 2023. 7. 2.