Configurando o plugin Warnings Next Generation para integração PVS-Studio

Configurando o plugin Warnings Next Generation para integração PVS-Studio
O lançamento do PVS-Studio 7.04 coincidiu com o lançamento do plugin Warnings Next Generation 6.0.0 para Jenkins. Apenas nesta versão, o plugin Warnings NG adicionou suporte para o analisador estático PVS-Studio. Este plugin visualiza dados de aviso do compilador ou outras ferramentas de análise no Jenkins. Este artigo descreverá em detalhes como instalar e configurar este plugin para uso com o PVS-Studio e também descreverá a maioria de seus recursos.

Instalando o plugin de aviso de próxima geração no Jenkins

Por padrão, Jenkins está localizado em http://localhost:8080. Na página principal do Jenkins, no canto superior esquerdo, selecione “Gerenciar Jenkins”:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

A seguir, selecione o item “Gerenciar Plugins”, abra a aba “Disponível”:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

No canto superior direito do campo de filtro, digite “Avisos da Próxima Geração”:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Encontre o plugin na lista, marque a caixa à esquerda e clique em “Instalar sem reiniciar”:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

A página de instalação do plugin será aberta. Aqui veremos os resultados da instalação do plugin:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Criando uma nova tarefa no Jenkins

Agora vamos criar uma tarefa com configuração gratuita. Na página principal do Jenkins, selecione “Novo Item”. Digite o nome do projeto (por exemplo, WTM) e selecione o item “Projeto Freestyle”.

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Clique em “Ok”, após o qual a página de configuração da tarefa será aberta. No final desta página, no item “Ações pós-build”, abra a lista “Adicionar ação pós-build”. Na lista, selecione “Registrar avisos do compilador e resultados de análises estáticas”:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Na lista suspensa do campo “Ferramentas”, selecione “PVS-Studio” e clique no botão salvar. Na página da tarefa, clique em “Construir agora” para criar uma pasta no espaço de trabalho no Jenkins para nossa tarefa:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Obtendo resultados de construção do projeto

Hoje me deparei com o projeto dotnetcore/WTM nas tendências do Github. Baixei do Github, coloquei 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 é apresentada no artigo de mesmo nome: PVS-Studio para Visual Studio.

Executei a construção do projeto no Jenkins algumas vezes. Como resultado, um gráfico apareceu no canto superior direito da página de tarefas WTM no Jenkins e um item de menu apareceu à esquerda Avisos do PVS-Studio:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Ao clicar no gráfico ou neste item de menu, uma página é aberta com a visualização do relatório do analisador PVS-Studio usando o plugin Warnings Next Generation:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Página de resultados

Existem dois gráficos de pizza na parte superior da página. À direita dos gráficos está a janela do gráfico. Abaixo está uma tabela.

Configurando o plugin Warnings Next Generation para integração PVS-Studio

O gráfico de pizza da esquerda mostra a proporção de avisos de diferentes níveis de gravidade, o da direita mostra a proporção de avisos novos, não corrigidos e corrigidos. Existem três gráficos. O gráfico exibido é selecionado usando as setas à esquerda e à direita. Os dois primeiros gráficos mostram as mesmas informações dos gráficos e o terceiro mostra a variação do número de alertas.

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Você pode selecionar montagens ou dias como pontos do gráfico.

Também é possível restringir e expandir o intervalo de tempo do gráfico para ver os dados de um determinado período:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Você pode ocultar gráficos de determinadas métricas clicando na designação da métrica na legenda do gráfico:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Gráfico após ocultar a métrica “Normal”:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Abaixo está uma tabela que exibe os dados do relatório do analisador. Ao clicar em um setor de um gráfico de pizza, a tabela é filtrada:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

A tabela possui várias guias para filtragem de dados. Neste exemplo, a filtragem por namespace, arquivo, categoria (nome do alerta) está disponível. Na tabela você pode selecionar quantos avisos exibir em uma página (10, 25, 50, 100):

Configurando o plugin Warnings Next Generation para integração PVS-Studio

É possível filtrar os dados pela string inserida no campo “Pesquisar”. Exemplo de filtragem pela palavra “Base”:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Na aba “Problemas”, ao clicar no sinal de mais no início da linha da tabela, será exibida uma breve descrição do aviso:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

A breve descrição contém um link para um site com informações detalhadas sobre este aviso.

Ao clicar nos valores das colunas “Pacote”, “Categoria”, “Tipo”, “Gravidade”, os dados da tabela são filtrados pelo valor selecionado. Filtrar por categoria:

Configurando o plugin Warnings Next Generation para integração PVS-Studio

A coluna "Idade" exibe quantas compilações sobreviveram a esse aviso. Clicar no valor na coluna Idade abrirá a página de construção onde este aviso apareceu pela primeira vez.

Clicar em um valor da coluna “Arquivo” abrirá o código-fonte do arquivo na linha com o código que causou o aviso. Se o arquivo não estiver no diretório de construção ou tiver sido movido após a criação do relatório, não será possível abrir o código-fonte do arquivo.

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Conclusão

O Warnings Next Generation acabou sendo uma ferramenta de visualização de dados muito útil no Jenkins. Esperamos que o suporte ao PVS-Studio por este plugin ajude muito aqueles que já usam o PVS-Studio e também atraia a atenção de outros usuários do Jenkins para a análise estática. E se a sua escolha recai sobre o PVS-Studio como analisador estático, ficaremos muito felizes. Nós convidamos você baixe e experimente nossa ferramenta.

Configurando o plugin Warnings Next Generation para integração PVS-Studio

Se você quiser compartilhar este artigo com um público que fala inglês, use o link de tradução: Valery Komarov. Configuração do plugin Warnings Next Generation para integração no PVS-Studio.

Fonte: habr.com

Adicionar um comentário