gerar relatórios de cobertura de código GCC
website e documentação • bugtracker • GitHub
Gcovr fornece um utilitário para gerenciar o uso do utilitário GNU gcov e gerar resultados resumidos de cobertura de código. Este comando é inspirado no pacote Python cobertura.py, que fornece um utilitário semelhante para Python.
O comando gcovr
pode produzir diferentes tipos de relatórios de cobertura:
Opção CLI | Guia do usuário | Descrição |
---|---|---|
padrão, --txt | Saída de texto | resumos compactos legíveis por humanos |
--html | Saída HTML | visão geral de todos os arquivos |
--html-details | Saída HTML | arquivos de origem anotados |
--html-template-dir | Saída HTML | use um conjunto personalizado de modelos Jinja2 |
--csv | Saída CSV | Relatório CSV resumindo a cobertura de cada arquivo |
--json | Saída JSON | Relatório JSON com estrutura e cobertura do arquivo de origem |
--json-summary | Saída JSON | Relatório de cobertura resumida JSON |
--clover | Saída XML do trevo | relatórios XML legíveis por máquina em formato Clover |
--cobertura | Saída XML da cobertura | relatórios XML legíveis por máquina no formato Cobertura |
--coveralls | Saída JSON de macacões | relatório JSON legível por máquina no formato Macacão |
--jacoco | Saída XML JaCoCo | relatórios XML legíveis por máquina no formato JaCoCo |
--lcov | Saída de informações LCOV | relatório legível por máquina em formato de informação LCOV |
--sonarqube | Saída XML do SonarQube | relatórios XML legíveis por máquina no formato SonarQube |
Assim, o gcovr pode ser visto como uma alternativa de linha de comando ao utilitário lcov, que executa o gcov e gera um relatório formatado em HTML. O desenvolvimento do gcovr foi motivado pela necessidade de resumos de texto e relatórios XML.
Exemplo de resumo HTML:
Exemplo de detalhes HTML:
Gcovr está disponível como um pacote Python que pode ser instalado via pip.
Instale a versão estável mais recente gcovr
do PyPI:
pip install gcovr
Instale a versão de desenvolvimento do GitHub (precisa de pelo menos a versão 21.3 do pip):
pip install git+https://github.com/gcovr/gcovr.git
O GCC pode instrumentar os executáveis para emitir dados de cobertura. Você precisa recompilar seu código com os seguintes sinalizadores:
--cobertura -g -O0
Em seguida, execute seu conjunto de testes. Isto irá gerar arquivos de cobertura bruta.
Finalmente, invoque o gcovr. Isso imprimirá um relatório tabular no console.
gcovr
Você também pode gerar relatórios HTML detalhados ou aninhados:
gcovr --html-detalhes cobertura.html gcovr --html-cobertura aninhada.html
O Gcovr criará um relatório HTML por arquivo de origem e para --html-nested
também por diretório próximo ao resumo de cobertura.html.
Você deve executar o gcovr no diretório de construção. A opção -r
deve apontar para a raiz do seu projeto. Isso só importa se você tiver um diretório de construção separado. Por exemplo:
construção de CD; gcovr -r ..
Para documentação completa, leia o manual.
Se você deseja relatar um bug ou contribuir para o desenvolvimento do gcovr, leia primeiro nossas diretrizes de contribuição: https://gcovr.com/en/latest/contributing.html
Este software é distribuído sob a licença BSD de 3 cláusulas. Consulte https://gcovr.com/en/latest/license.html#license-terms para obter detalhes. Consulte https://gcovr.com/en/latest/license.html#acknowledgements para obter a lista completa de colaboradores.