첫째 법칙: 실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다.
둘째 법칙: 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다.
셋째 법칙: 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다.
테스트는 유연성, 유지보수성, 재사용성을 제공한다.
테스트 케이스가 있으면 변경이 두렵지 않다. 테스트 케이스가 없다면 모든 변경이 잠정적인 버그다.
개념 당 assert문 수를 최소로 줄여라. 테스트 함수 하나는 개념 하나만 테스트하라.
FIRST 원칙