개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
실패하는 단위 테스트를 작성 할때 까지 실제 코드를 작성하지 않는다
깨끗한 테스트 코드 유지하기
테스트를 작성하는 5가지 규칙
TIL (Today I Learned) 날짜
2022-03-06
오늘 읽은 범위
9장 단위테스트
책에서 기억하고 싶은 내용을 써보세요.
(p.157) 테스트는 유연성, 유지보수성, 재사용성을 제공한다. 테스트 코드를 깨끗하게 유지하지 않으면 결국은 잃어버린다.
(p.164) [테스트 당 assert 하나] assert 문이 하나인 함수는 결론이 하나라서 코드를 이해하기 쉽고 빠르다 (...) assert 문을 여럿 사용하는 편이 좋다고 생각한다.(...) 때로는 주저 없이 함수 하나에 여러 assert 문을 넣기도 한다. 단지 assert 문 개수는 최대한 줄여야 좋다는 생각이다
(p.166) [테스트 당 개념 하나] (...) 가장 좋은 규칙은 "개념 당 assert 문 수를 최소로 줄여라"와 테스트 함수 하나는 개념 하나만 테스트하라" 라 하겠다.
(p.168) [결론] 테스트 코드는 실제 코드만큼이나 프로젝트 건강에 중요하다. 어쩌면 실제 코드보다 더 중요할지도 모르겠다. 테스트 코드는 실제 코드의 유연성, 유지보수성, 재사용성을 보존하고 강화하기 떄문이다. 그러므로 테스트 코드는 지속적으로 깨끗하게 관리하자.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
테스트 코드의 중요도를 다시한번 생각했다.
테스트 코드의 주제는 별도의 책 한권 이상의 분량을 할애해도 모자라는 분야라는 점을 알게 되었다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
[BUILD-OPERATE-CHECK 패턴]
(1) 테스트 자료를 만든다.
(2) 테스트 자료를 조작한다.
(3) 조작한 결과가 올바른지 확인한다.
[F.I.R.S.T]
(1) 빠르게(Fast): 테스트는 빨라야한다.
(2) 독립적으로(Independent): 각 테스트는 서로 의존하면 안 된다.
(3) 반복가능하게(Repeatable): 테스트는 어떤 환경에서도 반복 가능해야 한다.
(4) 자가검증하는(Self-Validating): 테스트는 부울(bool)값으로 결과를 내야 한다. 성공 아니면 실패다.
(5) 적시에(Timely): 테스트는 적시에 작성해야 한다.
오늘 읽은 다른사람의 TIL