Chromium Chronicle #18: Chromium 코드 적용 범위

에피소드 18: 캘리포니아주 마운틴뷰 (2021년 2월)
이전 에피소드

테스트 범위는 특정 테스트가 실행될 때 테스트 도구 모음이 실행됩니다 커버리지 데이터 생성에는 세 가지 주요 단계인 컴파일이 있습니다. 계측 테스트 실행에서 데이터 수집 데이터를 후처리하는 것입니다. 커버리지 담당 팀은 이 과정을 자동화하는 도구를 보유하고 있습니다.

적용 범위 스크립트하나의 명령어로 코드 적용 범위 보고서를 생성할 수 있습니다. Gerrit UI가 업데이트될 때까지 기다리지 않고 작동합니다. 이 스크립트는 현재 Linux, Mac, iOS, ChromeOS에서 지원됩니다.

다음은 사용 예입니다.

$ gn gen out/coverage \
    --args='use_clang_coverage=true is_component_build=false'
$ python tools/code_coverage/coverage.py \
    crypto_unittests url_unittests \
    -b out/coverage -o out/report \
    -c 'out/coverage/crypto_unittests' \
    -c 'out/coverage/url_unittests --gtest_filter=URLParser.PathURL' \
    -f url/ -f crypto/

그러면 crypto_unittestsurl_unittests targets가 빌드되고 실행됩니다. 대상 url_unittests 테스트 URLParser.PathURL만 실행합니다. 보도 보고서가 url/의 파일과 하위 디렉터리만 포함하도록 필터링됨 및 crypto/ 프로세스 자동화 외에도 이 스크립트는 디렉터리 및 구성요소별 코드 적용 범위를 볼 수 있는 추가 기능을 제공합니다.

적용 범위 스크립트의 출력 스크린샷 디렉터리 보기
적용 범위 스크립트의 출력 스크린샷 구성요소 뷰

코드 적용 범위 도구는 디렉터리별로 코드 적용 범위 분석을 제공합니다. 전체 코드베이스, 윈도우즈, iOS, Android, Linux ChromeOS.

의견 공유: code-coverage @ chromium.org에 문의하거나 버그를 신고하세요. (crbug.com에서 확인 가능)

리소스