단위 테스트
나의 평점 ?/5.0
추천합니다.
-좋은 테스트 코드에 대해 고민하는 모든 사람에게.
추천하지 않습니다.
- 해당 책을 온전히 이해하기 위해서는 아키텍처에 대한 기본적인 지식들이 요구된다. 따라서 입문자에게는 권장하지 않음.
- 자바가 아닌 다른 언어로 작성된 코드를 보면 멀미가 나는 사람이라면.
테스트가 타당한 이유 없이 실패하면, 코드 문제에 대응하는 능력과 의지가 희석된다. 시간이 흐르면서 그러한 실패에 익숙해지고 그만큼 신경을 많이 쓰지 않는다. 이내 타당한 실패도 무시하기 시작해 기능이 고장 나도 운영 환경에 들어가게 된다.
Happy - Test Case만 작성했던 Devillage, TDD로 프로젝트를 진행했던 모락모락, 최근 진행한 모두의 모임까지.. 가장 큰 고민거리를 꼽으라면 역시 테스트 코드를 빼놓을 수 없었다.
"거짓 음성"도 문제지만 가장 심각한 문제는 "거짓 양성"이다.
책에서도 이야기하듯 리팩터링 이후 코드의 동작에 아무런 문제가 없음에도 테스트가 실패하는 "거짓 양성"은 테스트 코드에 대한 신뢰성을 저하시키고, 결국 팀원들의 테스트 코드 작성에 대한 의욕 자체를 저하시킨다.
이 책에서는 이런 "거짓 양성"을 최소화하기 위해 테스트 코드에서 절대 타협하지 않아야할, 가장 중요하게 생각해야할 지표를 "리팩터링 내성"으로 고정하고, 이외 두 가지 지표인 "회귀 방지"와 "빠른 피드백"의 사이에서 최대한 균형을 찾는 방법들에 대해 소개한다.
근데 어렵다. 내가 이 책의 점수를 책정하지 못한 이유는, 해당 책의 내용을 반절 밖에 이해하지 못했기 때문이다.
책의 내용을 완벽하게 이해하지도 못한 사람이 책을 평가할 수는 없는 법이니..
"기존 테스트 코드에 대해 가지고 있던 고민에 대해 보다 명확하게 이해할 수 있게 되었다."까지는 좋은데, 아쉽게도 이걸 어떻게 개선하면 좋을지에 대해서는 명확한 깨달음을 얻지 못했다. 아무래도 내가 직접 테스트 코드를 작성하며 최대한 책에서 습득한 지식을 활용하려고 노력하는 것 말고는 방법이 없지 않을까 싶다.
심지어 책에서 말하는 내용들이 무조건 옳은 것인지에 대한 고민까지 더하게 되었으니, 오히려 책을 읽기 전보다 고민이 더 많아진 것 같기도 하다.
하지만 좋은 해결책은 늘 더욱 넓은 시야에서 나오는 법.
테스트 코드에 대해 더 심도있는 고민을 해보고 싶은 사람들에게 이 책을 추천한다.
시간내서 읽어볼 가치가 있으며, 두고두고 다시 읽어볼 가치가 있는 책.
오늘은 글이 많이 짧은데, 인상 깊게 읽은 머릿말의 구절로 글을 마무리하겠다.
..
이 책을 읽으면 지금까지 함께 사용이 온 기술과 좋은 사례들이 왜 그렇게 유용한지 분명히 설명할 수 있을 것이다.
이 설명하는 능력을 만만하게 보지 말라. 동료에게 생각을 명확하게 진달하는 능력은 값으로 매길 수 없다.
소프트웨어 개발자는 (심지어 훌륭한 개발자라도) 그 결정이 내려진 이유 를 정확히 설명할 수 없다면 설계 결정에 대해 완전히 인정받지 못한다.
이 책을 읽으면 알고 있는 것을 무심결에 누구와도 이야기할 수 있게 된다.
'개발 도서 리뷰 > 개발 도서 리뷰' 카테고리의 다른 글
개발 도서 리뷰 (15) 실무로 배우는 시스템 최적화 5.0/5.0 (5) | 2023.08.03 |
---|---|
개발 도서 리뷰 (14) 친절한 SQL 튜닝 5.0/5.0 (4) | 2023.06.21 |
개발 도서 리뷰(12) 도메인 주도 설계로 시작하는 마이크로 서비스 개발 4.5/5.0 (3) | 2023.03.06 |
개발 도서 리뷰(11) 도메인 주도 개발 시작하기 4.5/5.0 (0) | 2023.01.07 |
개발 도서 리뷰 (10) 업무에 바로 쓰는 SQL 튜닝 4.0/5.0 (0) | 2022.12.24 |