source

Jest를 사용하여 코드 커버리지 보고서를 얻는 방법은 무엇입니까?

gigabyte 2022. 9. 13. 22:06
반응형

Jest를 사용하여 코드 커버리지 보고서를 얻는 방법은 무엇입니까?

Jasmine 위에 구축된 JavaScript Jest 테스트 프레임워크에서 코드를 커버할 수 있는 방법이 있습니까?

내부 프레임워크는 코드 적용 범위를 인쇄하지 않습니다.이스탄불, 담요, JSCOVER사용해 봤지만 모두 효과가 없습니다.

Jeest 21.2.1을 사용하면 명령줄에서 코드 커버리지를 볼 수 있으며 다음을 통과하면 커버리지 디렉토리를 생성할 수 있습니다.--coverageJese 스크립트로 이동합니다.다음은 몇 가지 예입니다.

Jest를 로컬에 설치하는 경향이 있습니다.이 경우 명령어는 다음과 같습니다.

npx jest --coverage

(확정되지 않았지만) Jest를 글로벌하게 설치했을 경우에도 이 기능이 작동한다고 생각합니다.

jest --coverage

아주 희박한 문서들이 여기 있어요

coverage/lcov-report 디렉토리로 이동했을 때 브라우저에 로드할 수 있는 index.html 파일을 발견했습니다.이 문서에는 명령줄에 인쇄된 정보와 추가 정보 및 그래픽 출력이 포함되어 있습니다.

업데이트: 2018년 7월 20일 - coverageReporters 링크 및 명칭이 추가되었습니다.

업데이트: 2017년 8월 14일 - 이 답변은 완전히 구식입니다.지금 제스트 문서를 보세요.그들은 이것을 하는 방법에 대한 공식적인 지원과 문서를 가지고 있다.

@hankhsiao는 이스탄불과 Jest가 협력하고 있는 곳에서 분기점을 가지고 있다.이를 Dev 종속성에 추가

 "devDependencies": {
     "jest-cli": "git://github.com/hankhsiao/jest.git"
 }

또, 패키지로 커버리지가 유효하게 되어 있는 것도 확인해 주세요.json jeast 엔트리와 원하는 형식을 지정할 수도 있습니다(html은 매우 불량합니다).

 "jest": {
     "collectCoverage": true,
     "coverageReporters": ["json", "html"],
 }

coverageReporters에 대한 Jest 문서를 참조하십시오(기본값:["json", "lcov", "text"])

또는 추가--coverage농담할 때.

2019년 1월 : Jest 버전 23.6

최근 이 질문을 검토하시는 분들을 위해 특히 테스트를 사용하거나 직접 수행하는 경우

현재 구성 옵션을 변경할 필요가 없습니다.

Jest 공식 웹사이트에 따르면 커버리지 보고서를 생성하려면 다음 작업을 수행할 수 있습니다.

1- npm의 경우:

넣어야 합니다.--통과하기 전에--coverage제스트의 논거

npm test -- --coverage

를 호출하려고 하면--coverage직접 없이--작동이 안될 거에요.

2- 실의 경우:

패스할 수 있습니다.--coverage직접적 농담의 논거

yarn test --coverage

이것으로 충분합니다.

 "jest": {
    "collectCoverage": true,
    "coverageReporters": ["json", "html"]
  },
  "scripts": {
    "test": "jest  --coverage"
  },

실행:

yarn/npm test
  1. 최신 Jest (v 0.22)를 확인해 주세요.https://github.com/facebook/jest

  2. Facebook 팀이 커버리지 리포트의 일부로 이스탄불 코드 커버리지 출력을 추가해, 직접 사용할 수 있습니다.

  3. Jest 실행 후 콘솔과 Jest에 의해 설정된 루트폴더 아래에 커버리지리포트가 JSON 및 HTML 형식으로 표시됩니다.

  4. 참고로 npm부터 설치하면 최신 버전이 나오지 않을 수 있으므로 먼저 GitHub을 사용해 보고 커버리지가 필요한지 확인하십시오.

npx jeast --coverage --path/to/your/file.spec.js 를 실행하여 영향을 받는 파일의 커버리지를 표시할 수 있습니다.

이것을 브라우저로 표시하는 경우는, 다음과 같이 할 수 있습니다.

  1. 브라우저 및 CMD+O로 이동합니다.
  2. repo로 이동하여 coverage/lcov-report/index.html을 검색합니다.

그러면 모든 커버리지 영역을 시각적으로 볼 수 있습니다.여기에 이미지 설명 입력

상세한 것에 대하여는, 다음의 링크를 참조해 주세요.https://dev.to/stevescruz/awesome-jest-tip-coverage-report-h5j

--coverage가 기능하지 않는 경우, coverageReporters가 text 또는 text-summary를 추가하지 않고 활성화 되어 있는 것도 원인일 수 있습니다.문서에서 "주의: 이 옵션을 설정하면 기본값이 덮어씁니다.콘솔 출력에 커버리지 요약을 표시하려면 "text" 또는 "text-summary"를 추가합니다.출처

패키지를 설정합니다.json 파일

"test" : "test" : "syslog" ,

여기에 이미지 설명 입력

지금 실행:

yarn test

모든 테스트가 실행되고 보고서가 표시됩니다.여기에 이미지 설명 입력

NestJS 프레임워크를 사용하는 경우 다음 명령을 사용하여 코드 커버리지를 얻을 수 있습니다.

npm run test:cov

같은 문제가 발생하여 아래와 같이 수정하였습니다.

  1. npm install --save-dev yarn
  2. jeast-cli를 npm install --save-dev jest-cli
  3. son j jjjjjjjjjj.jsonjson"jest-coverage": "yarn run jest -- --coverage"

한 후, 명령어를 합니다.npm run jest-coverage루트 디렉토리에 커버리지 폴더가 생성됩니다./coverage/icov-report/index.html에는 코드 커버리지의 HTML 뷰가 있습니다.

처츠파 한번 해봐.방금 사용했어요.Visual Studio에 통합하는 방법에 대해 블로그에 올렸습니다.

이것이 내가 Chutzpah로 코드 커버한 방법이다: Code Coverage with Chutzpah

언급URL : https://stackoverflow.com/questions/24825860/how-to-get-the-code-coverage-report-using-jest

반응형