GCC 코드 범위 보고서 생성
웹사이트 및 문서 • 버그 추적기 • GitHub
Gcovr은 GNU gcov 유틸리티 사용을 관리하고 요약된 코드 적용 범위 결과를 생성하는 유틸리티를 제공합니다. 이 명령은 Python에 유사한 유틸리티를 제공하는 Python Coverage.py 패키지에서 영감을 받았습니다.
gcovr
명령은 다양한 종류의 적용 범위 보고서를 생성할 수 있습니다.
CLI 옵션 | 사용자 가이드 | 설명 |
---|---|---|
기본값, --txt | 텍스트 출력 | 사람이 읽을 수 있는 간결한 요약 |
--html | HTML 출력 | 모든 파일 개요 |
--html-details | HTML 출력 | 주석이 달린 소스 파일 |
--html-template-dir | HTML 출력 | 맞춤 Jinja2 템플릿 세트 사용 |
--csv | CSV 출력 | 각 파일의 적용 범위를 요약하는 CSV 보고서 |
--json | JSON 출력 | 소스 파일 구조 및 적용 범위가 포함된 JSON 보고서 |
--json-summary | JSON 출력 | JSON 요약 적용 범위 보고서 |
--clover | 클로버 XML 출력 | Clover 형식의 기계 판독 가능한 XML 보고서 |
--cobertura | Cobertura XML 출력 | Cobertura 형식의 기계 판독 가능한 XML 보고서 |
--coveralls | 작업복 JSON 출력 | 작업복 형식의 기계 판독 가능 JSON 보고서 |
--jacoco | JaCoCo XML 출력 | JaCoCo 형식의 기계 판독 가능한 XML 보고서 |
--lcov | LCOV 정보 출력 | LCOV 정보 형식의 기계 판독 가능 보고서 |
--sonarqube | SonarQube XML 출력 | SonarQube 형식의 기계 판독 가능한 XML 보고서 |
따라서 gcovr은 gcov를 실행하고 HTML 형식의 보고서를 생성하는 lcov 유틸리티에 대한 명령줄 대안으로 볼 수 있습니다. gcovr의 개발은 텍스트 요약 및 XML 보고서의 필요성에 의해 동기가 부여되었습니다.
예제 HTML 요약:
HTML 세부정보 예시:
Gcovr은 pip를 통해 설치할 수 있는 Python 패키지로 제공됩니다.
PyPI에서 최신 안정 gcovr
릴리스를 설치합니다.
pip install gcovr
GitHub에서 개발 버전을 설치합니다(pip 버전 21.3 이상 필요).
pip install git+https://github.com/gcovr/gcovr.git
GCC는 실행 파일을 계측하여 적용 범위 데이터를 내보낼 수 있습니다. 다음 플래그를 사용하여 코드를 다시 컴파일해야 합니다.
--coverage -g -O0
다음으로 테스트 스위트를 실행하세요. 이렇게 하면 원시 적용 범위 파일이 생성됩니다.
마지막으로 gcovr을 호출합니다. 그러면 콘솔에 표 형식의 보고서가 인쇄됩니다.
gcovr
상세하거나 중첩된 HTML 보고서를 생성할 수도 있습니다.
gcovr --html-세부정보 Coverage.html gcovr --html-중첩 Coverage.html
Gcovr은 소스 파일당 하나의 HTML 보고서를 생성하며, 또한coverage.html 요약 옆의 디렉토리별로 --html-nested
에 대해서도 생성합니다.
빌드 디렉터리에서 gcovr을 실행해야 합니다. -r
옵션은 프로젝트의 루트를 가리켜야 합니다. 이는 별도의 빌드 디렉터리가 있는 경우에만 중요합니다. 예를 들어:
CD 빌드; gcovr -r ..
전체 문서를 보려면 설명서를 읽어보세요.
버그를 보고하거나 gcovr 개발에 기여하려면 먼저 기여 지침을 읽어보십시오: https://gcovr.com/en/latest/contributing.html
이 소프트웨어는 3조 BSD 라이센스에 따라 배포됩니다. 자세한 내용은 https://gcovr.com/en/latest/license.html#license-terms를 참조하세요. 전체 기여자 목록은 https://gcovr.com/en/latest/license.html#acknowledgements를 참조하세요.