TDD에 대한 단상 글 하나 공유

2018-01-16 14:20

오랜만에 코드스쿼드 교육 과정에서 나온 TDD 관련 글을 공유해 본다.

이 글은 2018년 1월 15일 TIL에서 발췌한 내용이다. 프로그래밍을 시작한지 1년도 되지 않은 친구가 TDD 기반으로 개발하면서 느낀 점을 학습일지에 쓴 내용이다.

잘하는 부분에 대해서도 좋지만, 못하는 부분일수록 TDD가 더욱 중요하다는 걸 느꼈다. 잘하는 부분에 대해서는 내가 구현한 코드가 잘 작동할 것이라는 확신을 느낀다.(거기에 제대로 된 테스트 코드까지 있다면 느낌이 아닌 사실이 되며, 테스트를 통해 검증을 한다) 하지만 못하는 부분에 대해서는 구현을 하고 나서도 잘 된 건지 아닌지 알 수가 없다. 그렇게 계속 구현하다가 운이 좋다면 아무 문제없이 완성이 되겠지만 어느 순간 문제가 생겼을 때 무엇이 문제인지 알 수 없는 총체적 난국인 상황이 온다. 게다가 작업이 진행될수록 잘 진행이 되고 있는 것인가에 대한 불안감이 점점 커진다.

하지만 TDD로 구현을 하게 되면 내가 못하는 부분이라도 초록불이 뜨는 걸 보는 것으로 한고비를 넘겼다는 확신을 가질 수 있다. 그렇게 다음 작업으로 넘어가서 현재 진행해야 할 작업에만 집중을 할 수 있게 된다. 다만, TDD에 익숙해지는 것이 쉽지 않은 게 사실이다. 게다가 좋은(혹은 제대로 된) 테스트 코드를 짠 게 맞나 의문이 들 때가 있긴 하다. 잘못된 테스트 코드는 구현한 기능에 구멍을 만들 테니 말이다. "좋은 테스트 코드 짜기" 이건 앞으로도 내 스스로 성장해 나가야 할 과제인 것 같다.

초보 개발자가 TDD를 연습하는데 어려움이 있겠지만 조금만 숙달된다면 잘 모르는 부분을 학습하는데 많은 도움이 될 것이라 생각한다. 물론 포기하고 싶은 순간도 많지만 꾸준히 연습해 보면 좋겠다.

0개의 의견 from FB

0개의 의견 from SLiPP

의견 추가하기

연관태그

← 목록으로