Cobertura 커버리지 보고서
Cobertura 커버리지 보고서에 대해 설명합니다.
커버리지 분석이 작동하려면 artifacts:reports:coverage_report 에 올바른 형식의 Cobertura XML 보고서를 제공해야 합니다. 이 형식은 원래 Java용으로 개발되었지만, 다른 언어 및 플랫폼을 위한 대부분의 커버리지 분석 프레임워크에는 이를 지원하는 플러그인이 있습니다: simplecov-cobertura (Ruby) gocover-cobertura (Go) cobertura (Node.js) 다른 커버리지 분석 프레임워크는 기본적으로 이 형식을 지원합니다. 예를 들면: Istanbul (JavaScript) Coverage.py (Python) PHPUnit (PHP) 구성 후, 머지 리퀘스트가 커버리지 보고서를 수집하는 파이프라인을 트리거하면 diff 뷰에 커버리지 정보가 표시됩니다. 여기에는 파이프라인의 모든 단계에 있는 모든 작업의 보고서가 포함됩니다. 각 줄에 대해 커버리지가 표시됩니다: covered (녹색): 테스트에서 최소 한 번 이상 확인된 줄 no test coverage (주황색): 로드되었지만 실행되지 않은 줄 커버리지 정보 없음: 계측되지 않았거나 로드되지 않은 줄 커버리지 바에 마우스를 올리면 해당 줄이 테스트에서 확인된 횟수 등 추가 정보를 확인할 수 있습니다. 테스트 커버리지 보고서를 업로드해도 다음 항목은 활성화되지 않습니다: 머지 리퀘스트 위젯의 테스트 커버리지 결과 . 코드 커버리지 기록 . 이러한 항목은 별도로 구성해야 합니다. 제한 사항 # Cobertura 형식 XML 파일에는 100개의 <source> 노드 제한이 적용됩니다. Cobertura 보고서가 100개 노드를 초과하면 머지 리퀘스트 diff 뷰에서 불일치 또는 일치하지 않는 항목이 발생할 수 있습니다. 단일 Cobertura XML 파일의 크기는 10 MiB를 초과할 수 없습니다. 대규모 프로젝트의 경우 Cobertura XML을 작은 파일로 분할합니다. 자세한 내용은 이 이슈 를 참조하세요. 여러 파일을 제출하는 경우 머지 리퀘스트에 커버리지가 표시되는 데 몇 분이 걸릴 수 있습니다. 시각화는 파이프라인이 완료된 후에만 표시됩니다. 파이프라인에 수동 차단 작업 이 있는 경우, 파이프라인은 계속하기 전에 수동 작업을 기다리므로 완료된 것으로 간주되지 않습니다. 차단 수동 작업이 실행되지 않으면 시각화를 표시할 수 없습니다. 작업이 여러 보고서를 생성하는 경우, 아티팩트 경로에 와일드카드를 사용합니다 . 자동 클래스 경로 수정 # 커버리지 보고서가 변경된 파일과 올바르게 일치하려면 class 요소의 filename 에 프로젝트 루트에 대한 전체 경로가 포함되어야 합니다. 그러나 일부 커버리지 분석 프레임워크에서 생성된 Cobertura XML은 filename 경로가 클래스 패키지 디렉터리에 대한 상대 경로로 지정됩니다. 프로젝트 루트에 대한 class 경로를 지능적으로 추측하기 위해 Cobertura XML 파서는 다음을 통해 전체 경로를 구성하려고 합니다: sources 요소에서 source 경
