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

Configuração do plugin Warnings Next Generation para integração do PVS-Studio
O lançamento do PVS-Studio 7.04 coincidia com o lançamento do plugin Warnings Next Generation 6.0.0 para Jenkins. Neste lançamento, o Warnings NG Plugin adicionou suporte ao analisador estático PVS-Studio. Este plugin visualiza dados sobre os avisos do compilador ou de outras ferramentas de análise no Jenkins. Neste artigo, explicaremos detalhadamente como instalar e configurar este plugin para uso com o PVS-Studio, além de descrever a maioria de suas funcionalidades.

Instalação do Plugin Warning Next Generation no Jenkins

Por padrão, o Jenkins está localizado em http://localhost:8080. Na página inicial do Jenkins, no canto superior esquerdo, selecionamos a opção "Gerenciar Jenkins":

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

Em seguida, selecionamos a opção "Gerenciar Plugins", abrindo a aba "Disponíveis":

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

No canto superior direito, no campo de filtro, digitamos "Warnings Next Generation":

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

Localizamos o plugin na lista, marcamos a caixa à esquerda e clicamos em "Instalar sem reiniciar":

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

Uma página de instalação de plugins será aberta. Nela, veremos os resultados da instalação do plugin:

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

Criando uma nova tarefa no Jenkins

Agora, vamos criar uma tarefa com configuração livre. Na página inicial do Jenkins, selecionamos "Novo Item". Inserimos o nome do projeto (por exemplo, WTM) e escolhemos a opção "Projeto Freestyle".

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

Clicamos em "OK", após o que a página de configuração da tarefa será aberta. Na parte inferior desta página, na seção "Ações pós-construção", abrimos a lista "Adicionar ação pós-construção". Na lista, escolhemos "Registrar avisos do compilador e resultados de análise estática":

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

No menu suspenso do campo "Ferramenta", escolhemos "PVS-Studio", depois clicamos no botão salvar. Na página da tarefa, clicamos em "Construir agora" para criar uma pasta no workspace do Jenkins para nossa tarefa:

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

Obtendo resultados da construção do projeto

Hoje, nos tendências do Github, encontrei o projeto dotnetcore/WTM. Eu o baixei do Github, coloquei na diretório de construçã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 homônimo: PVS-Studio para Visual Studio.

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

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

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

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

Página com os resultados

Na parte superior da página, há dois gráficos circulares. À direita dos gráficos, há uma janela de gráficos. Na parte inferior, está uma tabela.

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

No gráfico de pizza à esquerda, é exibida a proporção de avisos de diferentes níveis de gravidade, e à direita, a proporção de novos, não corrigidos e corrigidos. Há três gráficos. A seleção do gráfico exibido ocorre através das setas à esquerda e à direita. Os dois primeiros gráficos mostram as mesmas informações que os gráficos, e o terceiro apresenta a variação no número de avisos.

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

Como pontos dos gráficos, você pode escolher compilações ou dias.

Também há a possibilidade de estreitar e expandir o intervalo de tempo do gráfico, para visualizar dados em um determinado período:

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

Pode-se ocultar gráficos de métricas específicas clicando na legenda da métrica no gráfico:

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

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

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

Na parte inferior, há uma tabela que exibe os dados do relatório do analisador. Ao clicar em uma seção do gráfico de pizza, a tabela é filtrada:

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

A tabela possui várias abas para filtrar os dados. Neste exemplo, está disponível filtragem por namespace, arquivo, categoria (nome do aviso). Na tabela, você pode escolher quantos avisos exibir por página (10, 25, 50, 100):

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

Há a possibilidade de filtrar os dados pela string inserida no campo 'Search'. Exemplo de filtragem pela palavra 'Base':

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

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

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

Na breve descrição, há um link para o site com informações detalhadas sobre este aviso.

Ao clicar nos valores nas colunas 'Package', 'Category', 'Type', 'Severity', os dados da tabela são filtrados pelo valor selecionado. Filtragem por categoria:

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

Na coluna 'Age' é exibido quantas compilações passaram por este aviso. Ao clicar no valor na coluna 'Age', a página da compilação em que este aviso apareceu pela primeira vez será aberta.

Ao clicar no valor na coluna 'File', o código fonte do arquivo será aberto na linha com o código que causou o aviso. Se o arquivo não estiver presente no diretório de compilação ou tiver sido movido após a criação do relatório, a abertura do código fonte do arquivo não será possível.

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

Conclusão

Warnings Next Generation provou-se uma ferramenta muito útil para visualização de dados no Jenkins. Esperamos que o suporte ao PVS-Studio por meio deste plugin ajude muito aqueles que já utilizam o PVS-Studio e também atraia a atenção para a análise estática dos demais usuários do Jenkins. E se você escolher o PVS-Studio como seu analisador estático, ficaremos muito felizes. Convidamos baixar e experimentar nossa ferramenta.

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

Se você deseja compartilhar este artigo com um público de língua inglesa, por favor, utilize o link para a tradução: Valery Komarov. Configuração do plugin Warnings Next Generation para integração no PVS-Studio.

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster