테스트란?

<aside> ✅ 특정 모듈(컴포넌트)이 사양에 잘 동작하는지 자동화된 테스트로 검증

</aside>

⇒ 개발 비용 증가함.

테스트 코드의 효과 (얻을 수 있는 장점)

  1. 좋은 설계에 대한 사고를 도와준다.

  2. 테스트 코드를 기반으로 빠르고 안정적으게 리팩토링을 할 수 있다.

    1. 좋은 테스트 코드는 애플리케이션의 이해를 돕는 문서가 된다.
      • 테스트 코드만 보더라도, 현재 페이지가 어떻게 흘러가는지 파악할 수 있는 문서가 된다.

올바른 테스트 작성을 위한 규칙은 뭐가 있을까?

인터페이스를 기준으로 테스트 작성하자!!

커버리지 보다는 ⭐️의미있는 테스트 인지⭐️ 고민하자.

export const isNumber = (value) => typeof value === 'number';
export const isString = (value) => typeof value === 'string';

<aside> 💁🏼 100% 커버리지를 목표로 테스트 코드를 작성하면, 오히려 불필요한 리소스가 드는 것 일 수도 있다.

</aside>

<aside> 💁🏼 의미 없는 테스트 (예를들어 단순 렌더링)은 비용 낭비임.

</aside>