일상

TDD 주도 개발 스터디 후기

ri5 2022. 6. 6. 16:37

테스트 주도 개발 저자 켄트백

많은 기업에서 TDD, ATDD 등 테스트 주도 개발이라는 도입을 하고 테스트 커버리지를 높이는데 

많은 돈과 인력을 투자를 하고 있었습니다. 심지어 개발자를 뽑는데도 필수 역량으로 표시되어 있는 경우도 있었습니다.

하지만 주니어 개발자인 저에게 테스트 주도 개발이 왜 필요하고 어떻게 해야되는지에 와닿지 않았었습니다.

 

그래서 테스트 주도 개발 책중 가장 유명한 켄트백의 테스트 주도 개발 책을 읽게 되었고 게으른 저에게는

분명 책만 사두면 다 읽지 않을 것이라는 것을 알고 있기 때문에 책 스터디를 통해 강제성을 가지고 시간이 오래걸리긴 했지만.. 다 읽고 이렇게 후기를 남길 수 있게 되었습니다.

 

일단 이책은 TDD에 대한 이론에 가까운 책이기 때문에 실무에 바로 적용해보고 사용할 수 있는 책은 아닙니다...

실제 우리는 데이터 베이스, API, UI 등에 종속되어 코드를 작성하지만 책에서는 순수 객체에 대한 test code가 위주로 되어 있습니다.

 

그렇기에 실무에 바로 쓰는 테스트 코드를 배우고 싶다고 하면 비추지만 TDD가 나오게 된 배경을 이해하고 TDD가 가지고 있는 장점을 깊이 이해하고 주변 사람들에게 알려주고 싶다!! 라고 한다면 강추해드리는 책입니다.

스타트업에서 TDD 도입?

서로의 다른 입장

이 책을 읽는 스터디를 진행하다가 스타트업에 취업을 하게되었고 개발팀이 소규모이다보니 주니어 개발자인데도 기술 리드 비슷한 포지션을 담당하게 되었습니다. 다들 아시다시피 스타트업에서는 레거시 환경이 존재하고 레거시 환경을 개선하는 것은 쉽지 않습니다. 그리고 빠르게 개발을 하고 성적을 내야하는 스타트업에 TDD를 도입하고 설득하는 것은 더더욱 어렵습니다 ㅠㅠ 

TDD보다는 테스트를 도입하자

TDD가 익숙하지 않은 개발자에게 TDD를 바로 도입한다는 것은 관성으로 인해 다시 제자리로 돌아갈 가능성이 높습니다. 난이도가 높지 않은 로직부터 차차 테스트를 작성해나가면서 익숙해지고 다른 개발자들에게도 한번 권해보시는 것을 추천드립니다. TDD는 모든 것을 해결해줄 것 같은 만능 도구로 보이지만 결국 사람이 예상 가능한 것에 대한 문제를 막아주기 때문에 프로덕트를 운영해보면서 문제가 생겼을 때 계속 살을 덪붙여 완성 시켜야 합니다.