Configuration du plug-in Warnings Next Generation pour l'intégration PVS-Studio

Image 12

La sortie de PVS-Studio 7.04 a coïncidé avec la sortie du plugin Warnings Next Generation 6.0.0 pour Jenkins. Juste dans cette version, Warnings NG Plugin a ajouté la prise en charge de l'analyseur statique PVS-Studio. Ce plugin visualise des avertissements sur le compilateur ou d'autres outils d'analyse dans Jenkins. Cet article explique en détail comment installer et configurer ce plugin pour une utilisation avec PVS-Studio, et décrit également la plupart de ses fonctionnalités.


Installer le plug-in d'avertissement de prochaine génération dans Jenkins


Par défaut, Jenkins se trouve sur http: // localhost: 8080 . Sur la page principale de Jenkins, en haut à gauche, sélectionnez "Gérer Jenkins":

Image 1


Ensuite, sélectionnez l'élément "Gérer les plugins", ouvrez l'onglet "Disponible":

Image 8


Dans le coin supérieur droit du champ de filtre, saisissez «Avertissements de prochaine génération»:

Image 3


Nous trouvons le plugin dans la liste, mettez une coche à gauche et cliquez sur "Installer sans redémarrer":

Image 14


La page d'installation des plugins s'ouvre. Nous y verrons les résultats de l'installation du plugin:

Image 5


Créer une nouvelle tâche dans Jenkins


Créez maintenant une tâche avec une configuration gratuite. Sur la page d'accueil de Jenkins, sélectionnez «Nouvel élément». Saisissez le nom du projet (par exemple, WTM) et sélectionnez «Projet Freestyle».

Image 6


Cliquez sur OK, puis la page des paramètres de tâche s'ouvrira. Au bas de cette page, dans l'élément "Actions post-build", ouvrez la liste "Ajouter une action post-build". Dans la liste, sélectionnez "Enregistrer les avertissements du compilateur et les résultats de l'analyse statique":

Image 7


Dans la liste déroulante du champ «Outil», sélectionnez «PVS-Studio», puis cliquez sur le bouton Enregistrer. Sur la page des tâches, cliquez sur "Build Now" pour créer un dossier dans l'espace de travail Jenkins pour notre tâche:

Image 18


Obtenir des résultats de construction de projet


Aujourd'hui, dans les tendances Github, je suis tombé sur le projet dotnetcore / WTM. Je l'ai téléchargé depuis Github, l'ai placé dans le répertoire d'assemblage WTM de Jenkins et l'ai analysé dans Visual Studio à l'aide de l'analyseur PVS-Studio. Une description détaillée de l'utilisation de PVS-Studio dans Visual Studio est présentée dans l'article du même nom: PVS-Studio pour Visual Studio .

J'ai commencé à construire le projet à Jenkins à quelques reprises. En conséquence, un graphique est apparu en haut à droite de la page des tâches WTM dans Jenkins, et l'élément de menu Avertissements PVS-Studio est apparu à gauche:

Image 2


En cliquant sur le graphique ou cet élément de menu, une page s'ouvre avec la visualisation du rapport de l'analyseur PVS-Studio par le plugin Warnings Next Generation:

Image 9


Page de résultats


Sur la page ci-dessus se trouvent deux camemberts. À droite des graphiques se trouve une fenêtre de graphique. Voici un tableau.

Image 10


Le graphique circulaire de gauche montre la corrélation des avertissements de différents niveaux de danger, et celui de droite montre la corrélation des avertissements nouveaux, non corrigés et corrigés. Il y a trois graphiques. Le graphique à afficher est sélectionné à l'aide des flèches gauche et droite. Les deux premiers graphiques affichent les mêmes informations que les diagrammes, et le troisième - le changement du nombre d'alertes.

Image 26


En tant que points de graphiques, vous pouvez sélectionner des assemblages ou des jours.

Il est également possible de réduire et d'élargir la plage de temps du graphique pour voir les données pour une certaine période:

Image 27


Vous pouvez masquer les graphiques de certaines mesures en cliquant sur la désignation de la mesure dans la légende du graphique:

Image 28


Le graphique après avoir masqué la métrique "Normal":

Image 29


En bas se trouve un tableau affichant les données du rapport de l'analyseur. Lorsque vous cliquez sur un secteur d'un graphique à secteurs, le tableau est filtré:

Image 11


Le tableau comporte plusieurs onglets pour filtrer les données. Dans cet exemple, le filtrage par espace de noms, fichier, catégorie (nom d'avertissement) est disponible. Dans le tableau, vous pouvez choisir le nombre d'avertissements à afficher sur une page (10, 25, 50, 100):

Image 32


Il est possible de filtrer les données par la ligne saisie dans le champ "Rechercher". Exemple de filtrage du mot «Base»:

Image 33


Sous l'onglet Problèmes, lorsque vous cliquez sur le signe plus au début de la ligne du tableau, une brève description de l'avertissement s'affiche:

Image 34


La courte description contient un lien vers le site avec des informations détaillées sur cet avertissement.

En cliquant sur les valeurs dans les colonnes "Package", "Catégorie", "Type", "Gravité", les données du tableau sont filtrées par la valeur sélectionnée. Filtrage par catégorie:

Image 36


La colonne Age indique combien de builds ont survécu à cet avertissement. Cliquez sur une valeur dans la colonne Age pour ouvrir la page d'assemblage dans laquelle cet avertissement est apparu pour la première fois.

Cliquer sur la valeur dans la colonne "Fichier" ouvrira le code source du fichier sur la ligne avec le code qui a provoqué l'avertissement. Si le fichier ne se trouve pas dans le répertoire d'assembly ou a été déplacé après la création du rapport, l'ouverture du code source du fichier sera impossible.

Image 37


Conclusion


Avertissements Next Generation s'est avéré être un outil de visualisation de données très pratique dans Jenkins. Nous espérons que le support de PVS-Studio avec ce plugin aidera grandement ceux qui utilisent déjà PVS-Studio, et attirera également l'attention sur l'analyse statique des autres utilisateurs Jenkins. Et si en tant qu'analyseur statique votre choix se porte sur PVS-Studio, nous serons très heureux. Nous vous invitons à télécharger et essayer notre outil.



Si vous souhaitez partager cet article avec un public anglophone, veuillez utiliser le lien vers la traduction: Valery Komarov. Configuration du plugin Warnings Next Generation pour intégration dans PVS-Studio .

Source: https://habr.com/ru/post/fr466995/


All Articles