TIL (2024.02.09)
DAY 14~15
Summary
- TDD
- 깨끗한 테스트 코드 유지하기
- 깨끗한 테스트가 따르는 다섯 가지 규칙 F.I.R.S.T
책에서 기억하고 싶은 내용
9장 단위 테스트
TDD 법칙 세 가지 (p. 155)
- 첫째 법칙
실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다
- 둘째 법칙
컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다
- 셋째 법칙
현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다
깨끗한 테스트 코드 유지하기 (p. 156)
테스트는 유연성, 유지보수성, 재사용성을 제공한다
- 코드에 유연성, 유지보수성, 재사용성을 제공하는 버팀목이 바로 단위 테스트!
- why? 테스트 케이스가 있으면 변경이 두렵지 않기 때문!
깨끗한 테스트 코드 (p. 158)
- 깨끗한 테스트 코드를 만들기 위해서는?
- 테스트 코드의 가독성을 높이려면?
F.I.R.S.T (p. 167)
- 깨끗한 테스트가 따르는 다섯 가지 규칙
- Fast, 빠르게
테스트는 빨라야 한다
- Independant, 독립적으로
각 테스트는 서로 의존하면 안 된다
- Repeatable, 반복가능하게
테스트는 어떤 환경에서도 반복 가능해야 한다
- Self-Validating, 자가검증하는
테스트는 부울 값으로 결과를 내야 한다
- Timely, 적시에
단위 테스트는 테스트하려는 실제 코드를 구현하기 직전에 구현한다
오늘 읽은 소감
TDD, Test Driven Development 라는 개발 방법론 개념을 알고는 있었지만 왜 사용하는지는 이유를 모르고 있었다. 책에서는 코드에 유연성, 유지보수성, 재사용성을 제공하는 버팀목으로서 중요한 역할을 하여 쓰게 된 방법론이라고 나온다. 아직 실제로 경험해 본적은 없어 효과적인지 모르겠지만 개발자가 코드를 변경함으로써 발생하는 오류에 대한 부담감을 덜어주는 역할을 해주는 것이 아닐까? 물론 깨끗한 테스트 코드를 작성한 경우에 말이다.
나의 최애 북틸
- jinjanic91 님의 'TIL 7장 오류처리'
- TIL 링크
- 선정이유?
오늘 읽은 소감에 오류 처리에 대한 반성을 써놓으신게 제가 반성하는 부분과 비슷하게 작성되어있어 선정하게 됐습니다.
- topcircle 님의 '클린 코드 TIL : 7장. 오류 처리'
- TIL 링크
- 선정이유?
오늘 TIL 3줄 요약 부분에 책, 적용, 실행 각 3부분으로 나눠서 정리한게 깔끔하고 눈에 잘 들어와 선정하게 됐습니다.
- hyororo 님의 '[TIL] 7장 오류처리'
- TIL 링크
- 선정이유?
책의 나온 내용을 정리하는 방식이 질문을 던지고 그 질문에 대한 답을 책에 나온 내용으로 정리를 하면서 보기 좋게 정리하여 선정하게 됐습니다.