✏️ 2023-02-28 Today I Learn

@mitoconcrete · February 28, 2023 · 3 min read

테스트 오지게 작성해보기 (불편한 것에 익숙해지기)

오늘 하루동안 총 400라인의 테스트를 작성해보았다. 원래는 컨트롤러단 부터 시작되는 통합테스트를 실시했어야했지만, 우리조는 구조의 변경에 대비하여 서비스단에서만 로직을 작성하기로 했다. 처음엔 막막했는데, given-when-then의 순서로 assertThat, assertEqules, assertFalse, assertThrows 등을 적절하게 잘 사용하여, 테스트를 모두 작성하였다. 이게 TDD의 목적과는 다르게, 모든 어플리케이션이 작성되고, 그걸 커버하기위해 후순위로 테스트가 작성된 거긴하지만, 어플리케이션 내부의 동작의 일관성을 해당 테스트로 커버가능하다는 점에서 모든 테스트를 작성하고 안도감이 찾아왔다.

처음에 테스트를 작성 할 때는 이걸 왜 사용하지? 에 대한 의문부터 시작해서 익숙하지 않다보니 많은 불편함을 느꼈다. 하지만, 내가 소화가능한 수준부터 시작해서 하나씩 붙혀나가다 보니, 익숙해졌고, 그에 따라 필요성을 느낄 수 있는 상태로 되었다.

개발중에는 굉장히 많은 요소들을 공부해야하기 때문에, 어떤 것들을 학습하다보면 그동안 경험하지 못한것을 마주했을 때 의도치않은 불편함을 느끼게 되었다. 그런 경우 나는 주로 피해가거나, 돌아가거나 가장늦게 수행하는 방식으로 업무를 진행해왔는데, 이번에는 그냥 부딫치면서 진행해보았다.

부딫치다보니 익숙해지고, 익숙해지다보니 깨달음이 왔다. 나의 가장 큰 문제점은 어떤 문제를 직면했을 때 완벽하게 해내려고 한다는 점이었다. 하지만, 내가 소화할 수 있는 수준으로 욕심을 줄이고 하나씩 붙혀서 앞으로 나아가는게, 나의 성장에 더욱 도움이 된다는 사실을 뼈져리게 느끼고 있는 중이고, 테스트도 그 중 하나이다.

개발공부는 항상 새로운 것을 마주해야하는데, 앞으로 이런스탠스를 유지하여 불편한것을 피하기보다, 돌파하려고 노력해야겠다는 생각을 했다.

@mitoconcrete
어제보다 조금 더 성장하기 위해 기록합니다.