[javascript] 리액트 프레임워크에서 테스트 커버리지를 어떻게 측정하나요?

리액트 프레임워크에서 테스트 커버리지를 측정하는 방법은 여러가지가 있습니다. 여기서는 대표적인 도구인 Jest와 Istanbul을 사용하는 방법을 알려드리겠습니다.

  1. Jest와 Istanbul 설치
    npm install jest istanbul --save-dev
    
  2. package.json에 test 스크립트 추가
    {
      "scripts": {
        "test": "jest --coverage"
      }
    }
    
  3. 테스트를 작성하고 실행
    // 예시 테스트 파일 (Example.test.js)
    import { add } from './Example';
    
    test('add 함수가 올바르게 동작하는지 테스트', () => {
      expect(add(1, 2)).toBe(3);
    });
    
  4. 테스트 커버리지 확인 커맨드 라인에서 npm test 명령어를 실행하면 테스트가 실행되고 커버리지 정보가 출력됩니다. 또는 Jest 설정 파일 jest.config.js에서 coverage 옵션을 true로 설정하여 실행할 수도 있습니다.

    npm test
    

    이렇게 하면 Istanbul이 단위 테스트를 실행하고 커버리지 보고서를 생성합니다. 커버리지 보고서는 coverage/lcov-report/index.html 파일로 생성되며, 브라우저에서 열어서 확인할 수 있습니다.

이와 같이 Jest와 Istanbul을 사용하여 리액트 프레임워크에서 테스트 커버리지를 측정할 수 있습니다. Jest는 테스트 러너로서 테스트 실행을 도와주고, Istanbul은 커버리지 리포트 생성을 담당합니다. 이 두 도구를 함께 사용하여 프로젝트의 테스트 커버리지를 측정하고 개선할 수 있습니다.

더 자세한 내용은 Jest와 Istanbul의 공식 문서를 참조하시기 바랍니다.