*주의* TDD 연습을 해 보고 느낀 점을 적은 글입니다. TDD에 대한 정보는 하나도 엄서요~~~~
Red...Green.....Refactor.....
중요한 것은 마음가짐... 하마터면 주객전도 될 뻔 했다....
스프링 부트에서 어노테이션으로 엄청 지원해줘서 그거만 보다가 TDD의 핵심 철학을 놓칠뻔 했다...
중요한 것은 바로바로 테스트 코드를 먼저 쓰고 개발을 해 나가면서 클린 코드와 코드에 대한 자신감 등등 부수적인 효과를 얻는 것이다! 그리고 그걸 돕는 것이 바로바로 스프링부트의 테스트 도구들이다! 그러니 올바른 테스트 코드를 쓸 수만 있다면 도구는 그 때 그 때 찾아서 스면 된다!(그러려면 무엇무엇 있는지 알긴 해야함)
그렇다면 올바른 테스트 코드는 무엇인가??!!
- Fast ( 빠름 )
- independent ( 독립됨 )
- Repeatable ( 반복 가능 )
- Self-validating ( 테스트가 성패를 판단하기 위해 다른 무엇을 찾아보게 하면 안된다 )
- Timely ( 적시에(테스트 코드 먼저 쓰기) )
라고 한다!
그리고 진짜 명명백백히 결과가 뻔하고 간단한 것들은 굳이 테스트 코드를 쓸 필요가 없는 것 같다. 이미 자신감 넘치기 때문이다. 그렇지만 맨날 쓰던 코드라도 조금이라도 쫄리면 테스트 코드를 먼저 조지는 것이 좋은 것 같다. 코드는 자신감이다!!!!!
아무튼 자기가 짠 로직 등에 대한 강한 확신이 들어야지 리펙토링도 가능하지 않을까? 이거 고쳤다가 안되는거 아니야? 하면 리펙토링이 가능할까? 그래서 TDD로 코드 자신감 상승 -> 그러다 보니 클린코드 -> 협업능률 상승 -> 프로젝트 작업 효율 최강 이래서 요즘은 TDD가 대세인갑다. 이제이제 매일매일 작업 할 때마다 TDD해야지.
끝
연습한 흔적 : github.com/yonmoyonmo/tdd-practice
참고한 다른 분들의 글 :
https://joont92.github.io/spring/spring-boot-test/
https://spring.io/guides/gs/testing-web/
https://brunch.co.kr/@springboot/207
https://goddaehee.tistory.com/212
'프로그래밍 > 기타등등' 카테고리의 다른 글
디자인 때문에 눈물 흘려본 프로그래머들아 오라! Figma (3) | 2021.09.30 |
---|---|
나도 이제 TDD!! 할거야! (1) | 2021.04.12 |
ERD Cloud 정말 좋다. (0) | 2021.02.11 |
댓글