모든 테스트를 실행해라: 테스트코드를 작성을 시도할 수록 결합도를 낮추고 응집도를 높여 셜계 품질을 향상
리팩토링: 테스트 코드가 있기 때문에 리팩토링 중에 기존 설계대로 진행하였는지를 항상 확인 가능
좋은 표현 방법
좋은 이름을 선택해라
함수와 클래스의 크기를 줄여라
표준 명칭을 사용해라
TC를 꼼꼼히 작성해라
생각
테스트 코드의 중요성을 이야기하는 것으로 느꼈다. 구현이 당장 바빠서, 이건 테스트 코드 짜는데 시간이 오래 걸릴 것 같아서 테스트 코드를 안짜고 넘어가본 경험이 있다. 이 경험의 결과는 '코드를 수정하면서 고생한다'는 결과를 얻었다. 테스트 코드를 '시간이 바쁘면 넘어가도 좋다'기 보단 '이걸 어떻게 빠르게 작성까'를 고민해야겠다는 생각을 하였다.
이번 장의 내용은 코드를 실행 가능한 상태까지 끌어올린 다음에 해야 할 행동 원칙으로 보인다. 우선 코드가 정상적으로 작동하는지 테스트로 확인한 이후, 리팩터링을 통해 나머지 3개의 원칙을 실행할 수 있기 때문이다. 테스트 케이스가 확실히 돌아가는 상태를 하나의 마일스톤으로 삼으라는 뜻으로 받아들이면 될 것 같다.
요약
생각
테스트 코드의 중요성을 이야기하는 것으로 느꼈다. 구현이 당장 바빠서, 이건 테스트 코드 짜는데 시간이 오래 걸릴 것 같아서 테스트 코드를 안짜고 넘어가본 경험이 있다. 이 경험의 결과는 '코드를 수정하면서 고생한다'는 결과를 얻었다. 테스트 코드를 '시간이 바쁘면 넘어가도 좋다'기 보단 '이걸 어떻게 빠르게 작성까'를 고민해야겠다는 생각을 하였다.