A versão PVS-Studio 7.04 coincidiu com a versão do plugin Warnings Next Generation 6.0.0 para Jenkins. Bem nesta versão, os avisos NG Plugin adicionaram suporte ao analisador de código estático PVS-Studio. Este plug-in visualiza dados relacionados a avisos do compilador ou outras ferramentas de análise no Jenkins. Este artigo abordará em detalhes como instalar e configurar este plug-in para usá-lo com o PVS-Studio e descreverá a maioria de seus recursos.
Instalação do plugin de próxima geração de aviso no Jenkins
Por padrão, Jenkins está localizado em
http: // localhost: 8080 . Na primeira página de Jenkins, no canto superior esquerdo, escolha o item "Gerenciar Jenkins":
Em seguida, selecione "Gerenciar plug-ins" e abra a guia "Disponível":
No canto superior direito, digite "Avisos de próxima geração" no campo de filtro:
Encontre o plugin na lista, marque à esquerda e clique em "Instalar sem reiniciar":
A página de instalação do plugin será aberta. Ele nos mostrará os resultados da instalação do plugin:
Criando uma nova tarefa no Jenkins
Agora vamos criar uma tarefa de configuração gratuita. Na página principal do Jenkins, escolha "Novo item". Digite o nome do projeto (por exemplo, WTM) e escolha "Projeto Freestyle".
Clique em "Ok" e a página de configuração da tarefa será aberta. Abra a lista "Adicionar ação pós-compilação" na parte inferior desta página no item "Ações pós-compilação". Na lista, selecione "Registrar avisos do compilador e resultados da análise estática":
Na lista suspensa do campo "Ferramenta", escolha "PVS-Studio" e clique em Salvar. Na página da tarefa, clique em "Build Now" para criar uma pasta no espaço de trabalho de Jenkins para a nossa tarefa:
Obtendo Resultados da Construção do Projeto
Hoje me deparei com o projeto dotnetcore / WTM nas tendências do Github. Fiz o download no Github, colei no diretório de compilação WTM no Jenkins e analisei no Visual Studio usando o analisador PVS-Studio. Uma descrição detalhada do uso do PVS-Studio no Visual Studio é fornecida no mesmo artigo:
PVS-Studio for Visual Studio .
Depois disso, executei a construção do projeto em Jenkins algumas vezes. Como resultado, um gráfico apareceu à direita na parte superior da página de tarefas da WTM em Jenkins. Um item de menu
PVS-Studio Warnings apareceu à esquerda:
Ao clicar no gráfico ou neste item de menu, você abrirá a página com visualização do relatório do analisador PVS-Studio pelo plug-in Warnings Next Generation:
Página de resultados
Existem dois gráficos de pizza no topo da página. À direita desses gráficos, há uma janela de gráfico. Uma mesa está no fundo.
O gráfico de pizza à esquerda mostra a proporção de avisos de diferentes níveis de perigo, à direita - a proporção de avisos novos, pendentes e fixos. Existem três gráficos. Você pode escolher os gráficos a serem exibidos usando as setas à esquerda e à direita. Os dois primeiros gráficos mostram as mesmas informações que os gráficos e o terceiro mostra o número de alterações no número de avisos.
Você pode escolher construções ou dias como pontos do gráfico.
Também é possível restringir e expandir o intervalo de tempo dos gráficos para ver os dados por um determinado período:
Você pode ocultar os gráficos de determinadas métricas clicando na designação da métrica na legenda do gráfico:
O gráfico após ocultar a métrica "Normal":
A tabela na parte inferior exibe os dados do relatório do analisador. Quando você clica no setor de torta, a tabela é filtrada:
Existem vários indicadores na tabela para filtrar os dados. Neste exemplo, a filtragem está disponível por namespace, arquivo, categoria (nome do aviso). Na tabela, você pode escolher o número de avisos a serem exibidos por página (10, 25, 50, 100):
Você pode filtrar os dados por uma linha inserida no campo "Pesquisar". Um exemplo de filtragem pela palavra "Base":
Na guia "Problemas", quando você clica no sinal de mais na parte superior da linha da tabela, uma breve descrição do aviso será exibida:
A breve descrição contém um link para o site com informações detalhadas sobre este aviso.
Quando você clica nos valores nas colunas "Pacote", "Categoria", "Tipo", "Gravidade", os dados da tabela são filtrados pelo valor escolhido. Filtrar por categoria:
A coluna "Idade" mostra o número de compilações com um determinado aviso. Ao clicar no valor na coluna "Idade", uma página de construção será aberta quando um determinado aviso aparecer pela primeira vez.
Ao clicar no valor na coluna "Arquivo", o código-fonte do arquivo será aberto na linha com o código que causou o aviso. Se um arquivo estiver ausente no diretório de compilação ou foi removido após a criação do relatório, a abertura do código-fonte do arquivo ficará indisponível.
Conclusão
Avisos A próxima geração acabou sendo uma ferramenta muito conveniente para visualização de dados no Jenkins. Esperamos que o suporte a este plugin pelo PVS-Studio ajude aqueles que já usam o PVS-Studio, bem como chame a atenção de outros usuários do Jenkins para a análise estática. Se sua escolha for no PVS-Studio como analisador de código estático, ficaremos muito satisfeitos. Você pode fazer o
download e experimentar nossa ferramenta.