Este guia abrange um exemplo em que um programa C verifica sua cobertura de código usando o comando gcov linux.
Como usar o comando gcov no linux
Um comando GCOV é uma ferramenta útil, especialmente para desenvolvedores, e oferece vários benefícios, incluindo:
O comando gcov é usado com os arquivos executados compilados usando G ++ ou GCC. Portanto, o comando funciona melhor com C ou c++ programas. O programa é compilado com sinalizadores específicos para permitir que o GCOV colete dados de cobertura. Uma vez compilado, vários arquivos são gerados contendo os arquivos Notes.
A partir daí, você executa o comando gcov com o arquivo executável para obter o relatório da cobertura de dados.
Por exemplo, usaremos um programa C que verifica e imprime os números divisíveis por números específicos dentro de um determinado intervalo. Por padrão, o comando gcov vem pré-instalado. Para compilar seu programa, use a sintaxe abaixo e substitua o nome do arquivo para corresponder ao seu. Para este exemplo, nosso arquivo é GCOV-TEST1.c como mostrado abaixo:
$ GCC -WALL -FPROFILE -ARCS -TEst -Coberage GCOV -Test.c
Depois de compilar seu código, você deve obter várias saídas, como na imagem anterior. Compilar o código cria um executável instrumentado que permite ao GCOV calcular as linhas de código usadas. O -Coberta de Ftest Permite que o GCOV calcule as linhas de código executadas. Por outro lado, o -FPROFILE-ARCS incorpora outros condicionais e você pode executar o executável instrumentado, como mostrado com o seguinte comando. Nosso instrumento executável é o a.fora Arquivo, mas se você especificou um arquivo de saída ao compilar o código, você teria um arquivo instrumentado diferente.
$ ./a.fora
O comando executa o programa e fornece a saída esperada, que no nosso caso é listar os números divisíveis no intervalo definido.
Depois que o código for executado, a próxima coisa é verificar a cobertura do código usando o comando gcov linux. Antes disso, você notará mais arquivos criados. Eles contêm os arquivos de notas em que o GCOV conta para gerar o relatório.
Aqui, você deve adicionar o nome do programa como argumento ao GCOV no seguinte comando:
$ GCOV GCOV-TEST1.c
Nossa saída será:
Observe que todas as linhas em nosso código foram executadas, o que significa que nosso código está bem otimizado. Além disso, um novo arquivo GCOV-TEST1.c.gcov foi criado. Ele contém o número de vezes que cada linha em nosso programa foi executada, como mostrado na imagem abaixo. Qualquer linha não executada teria o ###### precedendo, e o número à esquerda mostra o horário em que a linha individual foi executada. Usando esses detalhes, você pode determinar as alterações a fazer para otimizar seu programa e executá -lo mais rápido.
Se alguma linha for exibida como não executada usando um depurador, você poderá consertar isso. O objetivo é garantir que todas as linhas sejam executadas para atingir 100% e permitir que o código seja mais rápido.
Conclusão
Este artigo abrange a verificação da cobertura do seu código usando o comando gcov linux. Ao codificar programas, escrevemos várias linhas, mas nem todas são executadas. Assim, sabendo quais linhas executam e aquelas que não são necessárias. As informações ajudam a consertar ou remover essas linhas que não são executadas, tornando o código mais rápido e é uma boa maneira de otimizar seu programa.