개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
경계에 위치하는 코드는 깔끔히 분리한다. 또한 기대치를 정의하는 테스트 케이스를 작성한다.
TDD의 법칙, 단위 테스트가 없다면 모든 변경이 잠정적인 버그다.
깨끗한 테스트 코드를 만들려면? 가독성, 가독성, 가독성.
TIL 날짜
2022.03.06
오늘 읽은 범위
9장. 단위 테스트
책에서 기억하고 싶은 내용을 써보세요.
통제가 불가능한 외부 패키지에 의존하는 대신 통제가 가능한 우리 코드에 의존하는 편이 좋다. _p152
TDD 법칙 세 가지 _p155
첫째 법칙: 실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다.
둘째 법칙: 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다.
셋째 법칙: 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다.
F.I.R.S.T _p167
빠르게 fast: 테스트는 빨라야 한다.
독립적으로 Independent: 각 테스트는 서로 의존하면 안된다.
반복가능하게 Repeatable: 테스트는 어떤 환경에서도 반복 가능해야 한다.
자가검증하는 Self-Validating: 테스트는 부울 값으로 결과를 내야 한다.
적시에 Timely: 테스트는 적시에 작성해야 한다.
테스트 코드는 실제 코드만큼이나 프로젝트 건강에 중요하다. _p168
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
외부 라이브러리를 쓸 때 인기도? 기준으로 아무 의심도 하지 않고 붙였다. 그러니 프로젝트가 끝날 때 쯤이면 끔찍한 혼종?이 탄생하고 더이상 통제할 수 없을 것만 같은 기분이 든다. 그나마 이정도는 나은 경우, 테스트 케이스 없이 어떤 오류가 났는지 들여다보고 오류가 없는 라이브러리를 다시 검색하는 것이 대부분이었다. 그저 잘 돌아가기만 하면 되니까. 그래서 이번 경계와 단위 테스트는 저번 미션과 마찬가지로 깨닫는 것이 많았다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
Adaptor pattern
BUILD_OPERATE_CHECK
단위 테스트
오늘 읽은 다른사람의 TIL
https://nomadcoders.co/community/thread/3343 → 즉각적인 테스트가 가능한 예제에 관해서 같은 의문점을 가지고 있어서 소감 부분에서 동의되는 부분이 있었다. 단위 테스트 등 각종 테스트 방법에 대해 참고 링크를 걸어두셔서 함께 읽었을 때 더 이해가 잘 되었다.