테스트 사전 지식
테스트 코드를 작성하기 전 기본 개념 이해하기
TDD, Red - Green - Refactor

1
RED
구현해야 할 메서드를 생성하지 않고 예상대로 흘러갈 수 있도록 골조만 작성한다.
이 때, 컴파일 에러가 나는 것을 두려워하지 말고 테스트 코드를 동작시켜 실패하는 것을 유도해야한다.
2
GREEN
실패한 테스트 코드를 최대한 빠르게 통과 시키는 것이 핵심이다.
이 때, 어떠한 행위도 허용된다 마치 아래 처럼 하드코딩 하는 것도 마찬가지다.
3
REFACTOR
테스트 코드가 빠른 피드백을 제공하기 때문에 해당 메서드는 어떠한 방식으로도 리팩터링을 할 수 있다.
맨 처음 For Each 구문을 사용해서 향상된 반복문으로 금액을 더하는 코드였고 그 코드가 정상적으로 통과 되었다면 반복문 보다 컬렉션을 사용할 수 있는 API를 활용하는 구조로 변경하는 것은 훨씬 쉽기 때문이다.
TDD의 핵심은 빠른 피드백을 통해 코드를 점진적으로 리팩터링 가능하다 는 것이다.
TDD의 선순환은 메서드 시그니처를 설계할 때 외부에서 주입 가능하도록 사고를 하기 비교적 쉽다.
결론적으로 TDD는 관점의 차이를 가져온 설계 방식이다.
테스트 코드는 문서이다
✍️ Display Name 을 섬세하게 작성하자

BDD, Given - When - Then
Last updated