Chromium Chronicle n.o 18: Cobertura de código de Chromium

Episodio 18: de Veenita Joshi y Prakhar Asthana en Mountain View, CA (febrero de 2021)
Episodios anteriores

La cobertura de pruebas mide cuánto código fuente se ejecuta cuando se activa del paquete de pruebas. Para generar datos de cobertura, se deben seguir tres pasos principales: con instrumentación, recopilar datos de la ejecución de pruebas instrumentadas el procesamiento posterior de los datos. El equipo de cobertura tiene herramientas para automatizar este proceso.

La secuencia de comandos de cobertura puede generar informes de cobertura de código con solo un comando. sin esperar a que la IU de Gerrit se actualice. Actualmente, esta secuencia de comandos es compatible con Linux, Mac, iOS y ChromeOS.

Este es un ejemplo 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/

Esto compila y ejecuta crypto_unittests y url_unittests targets. Para url_unittests, solo ejecuta la prueba URLParser.PathURL. La cobertura el informe se filtra para incluir solo archivos y subdirectorios de url/ y crypto/. Además de automatizar el proceso, esta secuencia de comandos brinda funciones adicionales para ver la cobertura de código por directorios y componentes.

Captura de pantalla del resultado de la secuencia de comandos de cobertura. Vista de directorio
Captura de pantalla del resultado de la secuencia de comandos de cobertura. Vista de componente

La herramienta Cobertura de código proporciona un desglose de la cobertura de código por directorio. y componente de toda la base de código, para Windows, iOS, Android, Linux y ChromeOS.

Comparte tus comentarios: Comunícate con code-coverage @ chromium.org o informa un error en crbug.com.

Recursos