개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
테스트 코드는 실제 코드 못지 않게 중요하다.
단위 테스트는 코드에 유연성, 유지보수성, 재사용성을 제공한다.
테스트 코드에는 가독성이 중요하다.
TIL (Today I Learned) 날짜
2022. 05. 07
오늘 읽은 범위
9장. 단위 테스트
책에서 기억하고 싶은 내용을 써보세요.
TDD 법칙 세 가지 (p. 155)
실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다.
컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다.
현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다.
지저분한 테스트 코드를 내놓으나 테스트를 안 하나 오십보 백보라는, 아니 오히려 더 못 하다는 사실을 깨닫지 못 했다. (p. 156)
테스트 케이스가 없다면 모든 변경이 잠정적인 버그다. (p. 157)
FIRST (p. 167)
Fast: 테스트는 빨라야 한다.
Independent: 각 테스트는 서로 의존하면 안 된다.
Repeatable: 테스트는 어떤 환경에서도 반복 가능해야 한다.
Self-Validating: 테스트는 bool 값으로 결과를 내야 한다.
Timely: 테스트는 적시에 작성해야 한다.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
혹시 개발하면서 스토리북 쓰시는 분 계신가요? 테스트 코드와 비슷한 기능도 수행할 수 있고 그 외에도 장점이 많은데요. 문제는 실제 코드만큼 유지보수에 공수가 든다는 점인데요. 테스트 코드처럼 pre-commit 훅을 걸거나 하는 방법도 어려워서 전에 참여 했던 프로젝트의 스토리북들이 모두 폐허가 됐던 기억이 있습니다. 현재는 e2e 테스트도 지원하고 다시 주목을 받고 있는 것 같은데, 테스트 코드와 스토리북 모두 깨끗하게 유지보수할 수만 있으면 정말 좋을텐데 라는 아쉬움이 남습니다.