항해99

[TDD] 챕터1 회고

핏짜보이 2023. 7. 3. 08:22
반응형

챕터1로 TDD에 대해서 익히고 테스트코드를 작성해보는 시간을 가졌다.

처음에 우리 팀은 JS에 Express를 선택했지만, 팀모임을 하는 시간에 TS와 Nest.js를 써보자는 모두의 의견이 있어서 방향을 조정했다.

나도 개인적으로 회사에서는 백엔드 개발을 JS로만 진행중이어서 TS를 경험해보고 싶다는 생각을 했다. 

 

그래서 강의와 공식문서를 참고하면서 프로젝트를 진행했다.

나를 제외한 다른 분들은 모두 스프링 프레임워크를 다루시는 분들이라서 조금은 익숙하다고 이야기하셨다. 

 

아직 나는 새로운 언어나 프레임워크를 찾아보고 바로 적용하는데 시간이 걸리는것 같다.

그래도 이번에 TDD에 대해서 공부하고 적용해볼 수 있어서 좋았다.

 

테스트코드의 중요성은 이전부터 익히 들어서 알고는 있었지만, 이렇게 작성해본 적은 처음이어서 새롭기도 하고 좋았다.

TDD를 진행하면서 알게된 점은, 테스트코드를 작성할 때 성공코드보다도 실패코드를 작성하는 것이 중요하다는 점이었다. 

성공에 대한 케이스는 내가 생각할 수 있는 가장 최선의 상황이겠지만, 사용을 하다보면 정말 예상하지 못한 예외케이스가 수없이 나올수 있다는 점을 다시 깨달을 수 있었다.

그래서 하나의 테스트코드를 작성할 때, 성공코드 하나에 실패코드를 최소한 4-5가지 정도로 작성하면 좋다는 생각을 하게 되었다. 

그리고 테스트코드를 작성하고 난 뒤에 실제 비즈니스 로직을 작성하다보면 분명히 수정사항이 발생하기 때문에, 이 경우 테스트도 함께 바꿔야 정확하고 의미있는 테스트 진행이 가능하다는 것도 알 수 있었다. 

 


이번 챕터를 통해 느낀 점은 3가지이다.

1. TS와 Nest를 조금더 자세히 공부해봐야겠다.

2. 테스트 코드 작성을 통해서 내 코드에 대한 신뢰성을 높여야겠다.

3. 테스트 코드 작성은 코드 작성시 거의 필수적인 사항이다.


 

이번주부터는 CI/CD에 대한 내용을 공부한다. 

이번 내용은 회사에서 적용해본 적이 있지만, 이렇게 체계적으로 해본 적은 없어서 잘 배워서 현업에서도 꼭 적용해봐야겠다.

728x90