728x90
반응형

TIL (Today I Learned)

2022.03.06

오늘 읽은 범위

9장 단위 테스트

책에서 기억하고 싶은 내용을 써보세요.

  • TDD 법칙 세 가지
    - 첫째 법칙: 실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다.
    - 둘째 법칙: 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다.
    - 셋째 법칙: 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다.
  • 테스트 코드는 실제 코드 못지않게 중요하다 -> 테스트 코드가 복잡할수록 실제 코드를 짜는 시간보다 테스트 케이스를 추가하는 시간이 더 걸리기 십상이다 (p.156)
  • 테스트는 유연성, 유지보수성, 재사용성을 제공한다 -> 테스트 케이스가 있으면 변경이 쉬워지기 때문이다 (p.157)
  • 테스트 코드도 가독성이 좋아야 한다. 어쩌면 가독성은 실제 코드보다 테스트 코드에 더더욱 중요하다 (p.158)
  • 이중 표준 -> 실제 환경에서는 절대로 안 되지만 테스트 환경에서는 전혀 문제없는 방식이 있다. 대게 메모리나 CPU 효율과 관련 있는 경우다. 코드의 깨끗함과는 철저히 무관하다 (p.164)
  • 개념 당 assert 문 수를 최소로 줄여라 -> 때로는 함수 하나에 여러 assert 문을 넣을 수도 있지만, assert문 개수는 최대한 줄이는 것이 좋다 (p.165)
  • 테스트 함수 하나는 개념 하나만 테스트하라 (p.166)
  • 깨끗한 테스트는 F.I.R.S.T 규칙을 따르는데
    - 빠르게(Fast): 테스트는 빨라야 한다.
    - 독립적으로(Independent): 각 테스트는 서로 의존하면 안 된다.
    - 반복 가능하게(Repeatable): 테스트는 어떤 환경에서도 반복 가능해야 한다.
    - 자가 검증하는(Self-Validating): 테스트는 부울 값으로 결과를 내야 한다.
    - 적시에(Timely): 테스트는 적시에 작성해야 한다.

 

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

아직 자바로 테스트를 해본 적이 없어서 이해가 잘 되지는 않았다만, 다음에 테스트를 공부하게 된다면 지금 본 

내용이 학습에 큰 도움이 될 것 같다는 생각이 들었다.

728x90
반응형

'책 리뷰 > 클린코드' 카테고리의 다른 글

10장 클래스  (0) 2022.03.08
7장 오류 처리  (0) 2022.03.04
6장 객체와 자료구조  (0) 2022.03.01
5장 형식 맞추기  (0) 2022.03.01
4장 주석  (0) 2022.02.27

+ Recent posts