간단한 노드 JS 애플리케이션이 있고 모카와 함께 이스탄불을 사용하여 코드 커버리지 보고서를 생성합니다. 이것은 잘 작동합니다.코드에 대한 테스트가없는 경우 실패한 코드 범위
새로운 기능을 작성했지만 테스트를 만들지 않거나 테스트 파일을 만들지 않아도이를 확인할 수 있습니까?
나의 궁극적 인 목표는 테스트가 전혀없는 코드가 우리의 지속적인 통합 프로세스에 의해 선택되고 빌드에 실패하는 것입니다.
이것이 가능합니까?
간단한 노드 JS 애플리케이션이 있고 모카와 함께 이스탄불을 사용하여 코드 커버리지 보고서를 생성합니다. 이것은 잘 작동합니다.코드에 대한 테스트가없는 경우 실패한 코드 범위
새로운 기능을 작성했지만 테스트를 만들지 않거나 테스트 파일을 만들지 않아도이를 확인할 수 있습니까?
나의 궁극적 인 목표는 테스트가 전혀없는 코드가 우리의 지속적인 통합 프로세스에 의해 선택되고 빌드에 실패하는 것입니다.
이것이 가능합니까?
당신이 달성 할 수있는 한 가지 방법은 코드 적용 범위를 사용하는 것입니다.
"check-coverage": "istanbul check-coverage --root coverage --lines 98 --functions 98 --statements 98 --branches 98"
파일을 package.json
파일에 추가하기 만하면 필요에 따라 임계 값을 변경하십시오. 코드가 작성되었지만 테스트가없는 경우 적용 범위가 축소됩니다.
나는이 문제를 해결하는 올바른 방법인지 모르겠지만 먼저 cover
명령을 실행하고 매개 변수 --include-all-sources
을 추가하여 다음 테스트 파일없이 코드에보고하고 생성 된 coverage.json
파일에 추가 .
그런 다음 check-coverage
을 실행하면 실패합니다. 내 CI 프로세스에서 나는 cover
을 먼저 실행 한 다음 check-coverage
개인적으로 나는 처음에는 이것을 보지 못했던 약간의 혼란 스럽거나 명확하지 않은 문서를 찾았다.
안녕하세요. 귀하의 답변에 감사드립니다. 나는 이미 내 package.json에서 그 명령을 사용하고 있지만 테스트없이 가지고있는 파일을 선택하지 않는 것 같습니다. 또한 명령을 실행하기 전에 먼저'coverage.json' 파일을 생성하기 위해'cover' 명령을 실행해야합니다. –