Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio
Lansarea PVS-Studio 7.04 coincide cu lansarea pluginului Warnings Next Generation 6.0.0 pentru Jenkins. Tocmai în această lansare, Warnings NG Plugin a adăugat suport pentru analizorul static PVS-Studio. Acest plugin vizualizează datele despre avertizările compilatorului sau ale altor instrumente de analiză în Jenkins. În acest articol, vom discuta în detaliu cum să instalăm și să configurăm acest plugin pentru utilizarea cu PVS-Studio, precum și majoritatea funcționalităților sale.

Instalarea pluginului Warnings Next Generation în Jenkins

Implicit, Jenkins se află la adresa http://localhost:8080. Pe pagina principală Jenkins, în colțul stâng sus, selectăm opțiunea „Manage Jenkins”:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Apoi, selectăm opțiunea „Manage Plugins”, deschidem tab-ul „Available”:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

În colțul din dreapta sus, în câmpul de filtrare, introducem „Warnings Next Generation”:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Găsim pluginul în listă, bifăm căsuța din stânga și apăsăm „Install without restart”:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Se va deschide pagina de instalare a pluginurilor. Aici vom vedea rezultatele instalării pluginului:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Crearea unei noi sarcini în Jenkins

Acum vom crea o sarcină cu configurație liberă. Pe pagina principală Jenkins, selectăm „New Item”. Introducem numele proiectului (de exemplu, WTM) și alegem opțiunea „Freestyle project”.

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Apăsăm „Ok”, după care se va deschide pagina de configurare a sarcinii. În partea de jos a acestei pagini, la secțiunea „Post-build Actions”, deschidem lista „Add post-build action”. Din listă, alegem „Record compiler warnings and static analysis results”:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

În lista derulantă a câmpului „Tool”, alegem „PVS-Studio”, după care apăsăm butonul de salvare. Pe pagina sarcinii, apăsăm „Build Now” pentru a crea un folder în workspace-ul din Jenkins pentru sarcina noastră:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Obținerea rezultatelor compilării proiectului

Astăzi, în tendințele Github, mi-a atras atenția proiectul dotnetcore/WTM. L-am descărcat de pe Github, l-am plasat în directorul de compilare WTM din Jenkins și l-am analizat în Visual Studio cu ajutorul analizorului PVS-Studio. O descriere detaliată a utilizării PVS-Studio în Visual Studio este prezentată în articolul omonim: PVS-Studio pentru Visual Studio.

Am rulat compilarea proiectului în Jenkins de câteva ori. Drept rezultat, în colțul din dreapta sus al paginii sarcinii WTM din Jenkins a apărut un grafic, iar în stânga a apărut opțiunea de meniu PVS-Studio Warnings:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Când se apasă pe grafic sau această opțiune de meniu, se deschide pagina cu vizualizarea raportului analizorului PVS-Studio prin pluginul Warnings Next Generation:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Pagina cu rezultatele

Pe pagina de sus sunt două diagrame circulare. În dreapta diagramelor se află fereastra graficelor. În partea de jos se află o tabelă.

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Diagrama circular din stânga ilustrează raportul între avertizările de diferite niveluri de periculozitate, în timp ce diagrama din dreapta arată raportul între noile, nerezolvatele și rezolvatele avertizări. Există trei grafice. Graficele afișate pot fi selectate folosind săgețile din stânga și din dreapta. Primele două grafice prezintă aceeași informație ca și diagramelor, iar al treilea — schimbarea numărului de avertizări.

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Punctele grafice pot fi selectate în funcție de versiuni sau zile.

De asemenea, este posibil să restrângeți sau să extindeți intervalul de timp al graficului pentru a vedea datele pe o anumită perioadă:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Graficele anumitor metrici pot fi ascunse prin apăsarea denumirii metricii din legenda graficului:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Graficul după ascunderea metricii „Normal”:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

În partea de jos se află un tabel care arată datele raportului analizei. Apăsând pe un sector al diagramei circulare, se filtrează tabelul:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Tabelul are mai multe file pentru filtrarea datelor. În acest exemplu, filtrarea pe baza namespace-ului, fișierelor și categoriei (numele avertizării) este disponibilă. În tabel, puteți alege câte avertizări să fie afișate pe o pagină (10, 25, 50, 100):

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Există posibilitatea de a filtra datele după un termen introdus în câmpul „Search”. Exemplu de filtrare după cuvântul „Base”:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

În fila „Issues”, apăsând pe semnul plus din fața fiecărei linii din tabel, va fi afișat un rezumat al avertizării:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Rezumatul conține un link către un site cu informații detaliate despre această avertizare.

Apăsând pe valorile din coloanele „Package”, „Category”, „Type”, „Severity”, se filtrează datele tabelului în funcție de valoarea selectată. Filtrare pe bază de categorie:

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

În coloana „Age” se afișează câte versiuni au trecut prin această avertizare. Apăsând pe valoarea din coloana „Age”, se va deschide pagina versiunii în care a apărut prima dată această avertizare.

Apăsând pe valoarea din coloana „File”, se va deschide codul sursă al fișierului la linia cu codul care a generat avertizarea. Dacă fișierul lipsește din directorul de versiuni sau a fost mutat după generarea raportului, deschiderea codului sursă al fișierului va fi imposibilă.

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Concluzie

Warnings Next Generation s-a dovedit a fi un instrument foarte util pentru vizualizarea datelor în Jenkins. Sperăm că suportul pentru PVS-Studio din acest plugin va fi de mare ajutor celor care folosesc deja PVS-Studio și va atrage atenția altor utilizatori Jenkins asupra analizei statice. Dacă alegeți PVS-Studio ca analizator static, vom fi foarte încântați. Vă invităm să descărcați și să încercați instrumentul nostru.

Configurarea pluginului Warnings Next Generation pentru integrarea PVS-Studio

Dacă doriți să împărtășiți acest articol cu o audiență vorbitoare de limbă engleză, vă rugăm să folosiți linkul către traducere: Valery Komarov. Configurarea pluginului Warnings Next Generation pentru integrarea în PVS-Studio.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster