테스트 리팩토링

theonde·2022년 12월 7일
  • 기반 코드를 리팩토링하지 않고서는 테스트를 개선할 수 없다.

제품 코드와 테스트 코드는 본질적으로 관련되어있기 때문

  • 간단한 코드는 테스트할 필요가 없다. 가치가 0에 가깝다.

  • 컨트롤러의 경우, 포괄적인 통합 테스트의 일부로서 간단히 테스트해야 한다.

험블 객체 패턴

  • 테스트 가능한 부분을 추출한다. (험블 래퍼)

  • 육각형 아키텍처와 유사하다. (비즈니스 로직, 외부 의존성 분리)

  • 함수형 아키텍처 (모든 협력자와의 커뮤니케이션에서 비즈니스 로직을 분리, 아무런 협력자도 없다.)

  • 단일 책임 원칙을 지키는 것이다.

  • 다른 예로 MVC가 있다.

  • 비즈니스 로직과 외부 의존성을 분리하는 경우 코드가 깊거나(복잡) 넓을수(많은 외부 의존성) 있지만, 둘 다 가능하지는 않다. (분리 했기 때문에)

profile
개발자ㅋ.ㅋ

0개의 댓글