InfoGrab Docs

GitLab Runner 리뷰하기

GitLab Runner 프로젝트 리뷰어를 위한 테스트 커버리지 보고서 확인, 머지 리퀘스트 제목 및 레이블 검토 규칙과 권장 사항을 설명합니다.

이 문서는 GitLab Runner 프로젝트 리뷰어를 위한 규칙과 제안 사항을 담고 있습니다. 테스트 커버리지 보고서 검토 # GitLab Runner 프로젝트에는 많은 코드가 있습니다. 안타깝게도 코드 커버리지는 포괄적이지 않습니다. 현재(2019년 초) 커버리지는 약 55% 수준입니다. 레거시 코드에 테스트를 추가하는 것은 어려운 작업이지만, 프로젝트에 추가되는 새 코드에는 충분한 테스트 커버리지가 있어야 합니다. 코드 리뷰어는 커버리지 보고서를 살펴보고 새 코드가 커버되는지 확인하는 것이 좋습니다. 새 코드에 대해 가능한 한 많은 테스트 커버리지를 목표로 해야 합니다. 특정 변경에 필요한 커버리지 수준을 정의하는 것은 리뷰어의 판단에 맡겨집니다. 때로는 100% 커버리지가 달성하기 간단할 수 있습니다. 때로는 20% 커버리지만 있는 코드를 추가하는 것이 현실적이고 가장 중요한 것들이 테스트되도록 보장합니다. 리뷰어 여러분 - 현명하게 선택하세요 :) 기술적인 세부 사항으로 돌아가서... GitLab Runner CI/CD 파이프라인은 이 부분에서 도움을 주며, 일반( count ) 및 경쟁( atomic ) 모드에서 실행된 테스트에 대한 HTML 형식의 커버리지 보고서를 제공합니다. 파일 이름의 일부로 .race 와 .regular 를 포함하는 두 가지 유형의 보고서가 있습니다. 파일들은 커버리지 옵션과 함께 실행된 go test 명령의 추적 출력입니다. .race. 파일에는 -race 플래그로 시작된 테스트의 소스와 보고서가 포함되어 있으며, .regular. 파일은 이 옵션 없이 시작된 테스트의 소스와 보고서입니다. 세부 사항에 관심이 있는 분들을 위해, -race 테스트는 atomic 커버리지 모드를 사용하고, 표준 테스트는 count 커버리지 모드를 사용합니다. 우리의 경우, 살펴봐야 할 것은 coverage/coverprofile.regular.html 파일입니다. .race. 테스트는 경쟁 조건 상황에서 실패할 수 있으며(그래서 실행하는 것) 현재 지속적으로 실패하는 것들이 여러 개 있습니다. 이는 커버리지 프로파일이 완전하지 않을 수 있음을 의미합니다. .regular. 테스트는 대신 코드 내부에서 테스트된 것의 전체 개요를 제공합니다. 머지 리퀘스트에 대한 코드 커버리지 보고서를 보려면: 머지 리퀘스트의 Overview 탭에서 파이프라인 결과 아래의 View exposed artifact 를 클릭하여 섹션을 확장합니다. Code Coverage 를 클릭합니다. 아티팩트 브라우저를 사용하여 out/coverage/ 디렉토리로 이동합니다. 예를 들어, https://gitlab.com/gitlab-org/gitlab-runner/-/jobs/172824578/artifacts/browse/out/coverage/ . 이 디렉토리에는 항상 여섯 개의 파일이 포함됩니다 - .race. 파일 세 개와 .regular. 파일 세 개. 변경 사항을 검토할 때는 주로 .regular. HTML 보고서( coverprofile.reg