테스트 커버리지(Test Coverage)

박찬효·2023년 5월 4일
0

🔒 테스트 커버리지(Test Coverage)란?


테스트 커버리지란 시스템 또는 소프트웨어의 테스트를 논할 때 얼마나 테스트가 충분한가를 나타낸 것이다. 즉, 수행한 테스트가 테스트의 대상을 얼마나 커버했는지를 나타낸다.

🖊️ 테스트 커버리지 사용해보기


package.json에 커맨드로 "coverage"를 넣어줍니다.

// package.json
"scripts": {
    "start": "nodemon app.js",
    "test": "jest",
    "coverage": "jest --coverage"
  },

이렇게 작성한 후 터미널에 실행 시킵니다.

// npm
 
npm run coverage

// yarn

yarn run coverage

실행을 하게되면 테스트 결과와 함께 표가 출력됩니다.

-------------|---------|----------|---------|---------|-------------------
File         | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s 
-------------|---------|----------|---------|---------|-------------------
All files    |   82.85 |       60 |     100 |   82.85 |                   
 controllers |   53.84 |        0 |     100 |   53.84 |                   
  user.js    |   53.84 |        0 |     100 |   53.84 | 7-14              
 middlewares |     100 |      100 |     100 |     100 |                   
  index.js   |     100 |      100 |     100 |     100 |                   
 models      |     100 |      100 |     100 |     100 |                   
  user.js    |     100 |      100 |     100 |     100 |                   
 services    |     100 |      100 |     100 |     100 |                   
  user.js    |     100 |      100 |     100 |     100 |                   
-------------|---------|----------|---------|---------|-------------------
  • Flie (파일과 폴더 트리)
  • % Stmts (구문 비율)

  • % Branch (if문 등의 분기점 비율)

  • % Func (함수 비율)

  • % Lines (코드 줄 수 비율)

  • % Uncovered Line #s (커버되지 않은 줄 위치)

퍼센티지가 높을 수록 많은 코드가 테스트 되었다는 뜻이다. 여기선 명시적으로 테스트하고 require한 코드만 커버리지 분석이 된다는 점을 주의해야 한다.

profile
개발자가 되기 위한 1인

0개의 댓글