The Chromium Chronicle #18: cobertura de código do Chromium

Episódio 18:por Veenita Joshi e Prakhar Asthana Mountain View, CA (fevereiro de 2021)
Episódios anteriores

A cobertura de teste mede quanto código-fonte é executado quando uma determinada em execução no pacote de testes. A geração de dados de cobertura tem três etapas principais: compilar com a instrumentação, coletando dados da execução de testes instrumentados o pós-processamento dos dados. A equipe de cobertura tem ferramentas para automatizar esse processo.

O script de cobertura pode gerar relatórios de cobertura de código com apenas um comando, sem esperar pela atualização da interface no Gerrit. No momento, esse script pode ser usado no Linux, Mac, iOS e ChromeOS.

Aqui está um exemplo de uso:

$ 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/

Isso cria e executa crypto_unittests e url_unittests targets. Para url_unittests, ela executa apenas o teste URLParser.PathURL. Cobertura o relatório é filtrado para incluir somente arquivos e subdiretórios em url/ e crypto/. Além de automatizar o processo, este script fornece recursos extras para conferir a cobertura de código por diretórios e componentes.

Captura de tela da saída do script de cobertura. Visualização do diretório
Captura de tela da saída do script de cobertura. Visualização do componente

A ferramenta de cobertura de código oferece um detalhamento da cobertura de código por diretório. e componente para toda a base de código, para Windows, iOS, Android, Linux e ChromeOS.

Deixe seu feedback:entre em contato com code-coverage @ chromium.org ou informe um bug em crbug.com.

Recursos