6 분 소요

TIL (Today I Learned)

2022.03.05(토)


오늘 읽은 범위

  • 9장. 단위 테스트 (p.169)


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

  • 방대한 테스트 코드는 심각한 관리 문제를 유발하기도 한다.
  • 지저분한 테스트 코드는 테스트를 안 하는 것 보다 더 좋지 않다.
  • 테스트 코드도 실제 코드 못지 않게 깨끗하게 짜야한다.
  • 단위 테스트는 코드의 유연성, 유지보수성, 재사용성을 제공한다.
  • 테스트 코드가 지저분하면 코드를 변경하는 능력이 떨어지며, 코드 구조를 개선하는 능력도 떨어진다.


  • 테스트 코드도 가독성을 고려하여 작성한다.
  • 사용하는 API 위에다 함수와 유틸리티를 구현하여 테스트 언어로 사용한다.
  • 테스트 하나 당 assert문개수는 최대한 줄여야 좋다.
  • 테스트 함수마다 개념만 테스트한다.


  • 깨끗한 테스트 규칙 (F.I.R.S.T.)
    1. Fast(빠르게) : 테스트는 빠르게 돌아야 한다.
    2. Independent(독립적으로) : 각 테스트는 독립적이고 순서에 상관없이 실행되어야 한다.
    3. Repeatable(반복가능하게) : 테스트는 어떤 환경에서도 반복 가능해야한다.
    4. Self-Validating(자가검증하는) : 테스트는 부울값으로 결과를 내야한다.
    5. Timely(적시에) : 단위 테스트는 테스트하려는 실제 코드구현하기 직전에 구현한다.


  • 테스트 코드가 방치되어 망가지면 실제 코드도 망가진다. 테스트 코드를 깨끗하게 유지하자.


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

단위 테스트를 많이 접해보지 않았다. 그래서 테스트 코드를 어떻게 짜는지에 대해서는 잘 모르지만, 이번 장을 읽으면서 테스트 코드도 깨끗하게 짤 수 있도록 노력해야하는 것을 알았다.


궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  • BUILD-OPERATE-CHECK 패턴
  • given-when-then 관례
  • TEMPLATE METHOD 패턴



댓글남기기