코드 품질 개선 기법 4편: 문을 없애고 테스트하기
14
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

코드 품질 개선 기법: 문을 없애고 테스트하기

이 게시물은 단위 테스트에서 내부 구현보다는 외부에서 관찰 가능한 사양에 맞게 작동하는지 검증하는 중요성을 다룹니다.

핵심 내용

  • 테스트를 위해 가시성을 변경하는 대신 반환값이나 외부 객체와의 상호작용을 테스트할 것
  • 내부 상태를 직접 검사하는 테스트는 사양 변경 시 유지보수가 어려워짐
  • 외부 의존 객체는 mock을 활용해 상호작용을 검증하는 방법 제시

적용 예시

  • IntAdder 클래스의 내부 변수 currentSum 대신 flush() 함수 반환값을 테스트
  • 트랜잭션 기능에서 transactionLogger 객체와의 호출을 mock으로 검증

연관 게시글