TDD의 필요성
- 개인적인 생각이지만 시간이 걸리는 작업을 줄여주기 때문에 TDD는 필요하다고 생각한다.
왜 TDD를 쓸까.. 🤔
출처 : 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 / 이동욱 저
- 이 책 2장을 보면 스프링 부트에서 테스트 코드를 작성하자 라는 챕터가 뜨어어억 하니 나온다.
- 테스트 코드를 작성하는 이유에 대해 대략 3~4페이지 정도 나온다.
- 책에 나온 설명에도 불구하고 코드만 작성해도 문제없이 프로그램은 돌아갈 탠대 왜 굳이 테스트 코드까지 적어가면서 개발을 해야 하는지 궁금했다.
TDD 써볼까?🤔
- 정말 나에게 테스트 코드를 작성하는 능력이 필요한가?라는 생각이 들어 나 자신에게 하나의 실험을 해봤다.
- 스프링 부트 프로젝트를 생성한 후 컨트롤러 하나를 만들어준다.
- localhost:8080/hello 라고 주소창에 요청을 보내면
- hello라는 String 값이 웹 브라우저 상에 출력된다.
TDD를 적용해보자 🚀
- 기존에 hello라는 텍스트의 정상출력 유무를 판단하기 위해 새로운 웹브라우저 창에 http://localhost:8080/hello 라는 주소를 입력할 것이다.
- 만약 url로 바로 접근이 불가능하고, 필수로 입력되어야 하는 값이 존재한다면? 코드를 수정할 때마다 개발자가 한땀한땀 직접 확인해야 한다.
- 개발자 입장에선 시간이 걸린다.
- 단순히 테스트 코드를 작성함에 있어 개발자가 한땀한땀 클라이언트로부터 원하는 값이 잘 넘어왔는지의 유무를 확인하는 작업을 줄여줄 수 있다.
- 위와 같이 테스트 코드를 작성함에 있어, 웹브라우저에서 /hello라는 url 접근하지 않고 hello라는 String 값이 잘 넘어왔는지 확인할 수 가 있다.