가치있는 테스트를 위한 전략과 구현

기능을 구현하거나 문제를 해결하는 과정만큼 테스트 코드 또한 여러 가지 측면에서 반드시 필요하다고 생각하는 사람 중에 한 명입니다. 물론, 상황에 따라서 "완벽한" 테스트 코드를 작성하기란 서비스 기능을 고민하는 것만큼의 비용이 드는 문제라 개인의 관심을 넘어서 팀 또는 조직이 함께 관리해야 하는 영역이라 생각이 드는데요. 이번에 공유할 아티클은 테스트 코드를 작성하는 기본적인 이유나 관점을 포함하고 진화하는 코드에 걸맞게 테스트 코드 또한 "가치 있도록 작성" 하는 고민을 소개하고 있습니다.


글을 읽고 머릿속에 강렬하게 들어온 문장이 있는데요. "테스트는 시스템의 첫 고객으로서 설계를 개선해 줄 뿐만 아니라 특정 도구의 학습을 도와주기도 합니다."라는 문장입니다. 시스템의 첫 고객이라는 관점을 한 번도 생각하지 못했던 부분인데 이러한 관점으로 들여다보면 테스트 코드를 작성하면서 갖게 되는 장점(리팩토링, 구조 개선, 책임의 분리 등)을 자연스럽게 누리게 되는 것 같습니다. 또한 "어떠한 코드도 존재하는 순간 관리의 대상이므로, 불필요한 코드는 최소화하고자 했습니다."라는 문구 또한 인상 깊은데요. 개발을 하다 보면 "욕심"이란 생각들로 오버 엔지니어링을 하거나 과하게 추상화하는 등 필요 이상으로 개발하는 경우가 많은데 이 또한 테스트를 통해 기능을 개발하는 관점도 좋지만 기능을 사용하는 관점에서 들여다보는 관점 또한 매우 중요하다고 생각이 들었습니다.


https://toss.tech/article/test-strategy-server

가치있는 테스트를 위한 전략과 구현

toss.tech

가치있는 테스트를 위한 전략과 구현

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 10월 25일 오전 1:58

 • 

저장 21조회 5,020

댓글 0