Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio
El lanzamiento de PVS-Studio 7.04 coincidió con el lanzamiento del plugin Warnings Next Generation 6.0.0 para Jenkins. Justo en este lanzamiento, el plugin Warnings NG agregó soporte para el analizador estático PVS-Studio. Este plugin visualiza los datos sobre advertencias del compilador u otras herramientas de análisis en Jenkins. En este artículo se explicará en detalle cómo instalar y configurar este plugin para su uso con PVS-Studio, así como la mayoría de sus funcionalidades.

Instalación del Warning Next Generation Plugin en Jenkins

Por defecto, Jenkins se encuentra en la dirección http://localhost:8080. En la página principal de Jenkins, en la esquina superior izquierda, seleccionamos la opción «Administrar Jenkins»:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

A continuación, seleccionamos la opción «Administrar Plugins», abrimos la pestaña «Disponibles»:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

En la esquina superior derecha, en el campo de filtrado, introducimos «Warnings Next Generation»:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Encontramos el plugin en la lista, marcamos la casilla a la izquierda y hacemos clic en «Instalar sin reiniciar»:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Se abrirá la página de instalación de plugins. En ella veremos los resultados de la instalación del plugin:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Creación de una nueva tarea en Jenkins

Ahora vamos a crear una tarea con configuración libre. En la página principal de Jenkins, seleccionamos «Nuevo Elemento». Introducimos el nombre del proyecto (por ejemplo, WTM) y elegimos la opción «Proyecto Freestyle».

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Hacemos clic en «Aceptar», después se abrirá la página de configuración de la tarea. En la parte inferior de esta página, en la sección «Acciones posteriores a la construcción», abrimos la lista «Agregar acción posterior a la construcción». En la lista elegimos «Registrar advertencias del compilador y resultados de análisis estático»:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

En el menú desplegable del campo «Herramienta» seleccionamos «PVS-Studio», después de lo cual hacemos clic en el botón guardar. En la página de la tarea hacemos clic en «Construir ahora», para que se cree una carpeta en el espacio de trabajo en Jenkins para nuestra tarea:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Obtención de los resultados de la construcción del proyecto

Hoy, en las tendencias de Github, encontré el proyecto dotnetcore/WTM. Lo descargué de Github, lo coloqué en el directorio de construcción WTM en Jenkins y lo analicé en Visual Studio con la ayuda del analizador PVS-Studio. Una descripción detallada del uso de PVS-Studio en Visual Studio se presenta en un artículo homónimo: PVS-Studio para Visual Studio.

Ejecuté la construcción del proyecto en Jenkins un par de veces. Como resultado, en la parte superior derecha de la página de la tarea WTM en Jenkins apareció un gráfico, y a la izquierda apareció un elemento de menú Advertencias de PVS-Studio:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Al hacer clic en el gráfico o en este elemento de menú, se abre una página con la visualización del informe del analizador PVS-Studio a través del plugin Warnings Next Generation:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Página con los resultados

En la parte superior de la página hay dos gráficos circulares. A la derecha de los gráficos hay una ventana de gráficos. Abajo se encuentra una tabla.

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

En el gráfico circular de la izquierda se muestra la proporción de advertencias de diferentes niveles de peligrosidad, y en el de la derecha, la proporción de advertencias nuevas, no corregidas y corregidas. Hay tres gráficos. La selección del gráfico que se muestra se realiza mediante las flechas a la izquierda y a la derecha. Los primeros dos gráficos muestran la misma información que los diagramas, mientras que el tercero muestra el cambio en el número de advertencias.

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Como puntos en los gráficos se pueden seleccionar ensamblajes o días.

También hay una opción para ampliar y reducir el rango de tiempo del gráfico para ver los datos durante un período específico:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Se pueden ocultar gráficos de ciertas métricas al hacer clic en la designación de la métrica en la leyenda del gráfico:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Gráfico después de ocultar la métrica 'Normal':

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

En la parte inferior hay una tabla que muestra los datos del informe del analizador. Al hacer clic en un sector del gráfico circular, se filtran los datos de la tabla:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

La tabla tiene varias pestañas para filtrar datos. En este ejemplo, se puede filtrar por namespace, archivo, categoría (nombre de la advertencia). En la tabla, se puede seleccionar cuántas advertencias mostrar por página (10, 25, 50, 100):

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Hay una opción para filtrar datos por la cadena ingresada en el campo 'Buscar'. Ejemplo de filtrado por la palabra 'Base':

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

En la pestaña 'Issues', al hacer clic en el signo más al principio de la fila de la tabla, se mostrará una descripción breve de la advertencia:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

En la descripción breve hay un enlace al sitio con información detallada sobre esta advertencia.

Al hacer clic en los valores de las columnas 'Package', 'Category', 'Type', 'Severity', se filtran los datos de la tabla según el valor seleccionado. Filtrando por categoría:

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

En la columna 'Age' se muestra cuántos ensamblajes han sobrevivido a esta advertencia. Al hacer clic en el valor de la columna 'Age', se abrirá la página del ensamblaje en el que apareció esta advertencia por primera vez.

Al hacer clic en el valor de la columna 'File', se abrirá el código fuente del archivo en la línea con el código que provocó la advertencia. Si el archivo no está presente en el directorio del ensamblaje o ha sido movido después de crear el informe, no será posible abrir el código fuente del archivo.

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Conclusión

Warnings Next Generation se ha convertido en una herramienta de visualización de datos muy conveniente en Jenkins. Esperamos que el soporte de PVS-Studio en este complemento ayude mucho a quienes ya utilizan PVS-Studio y también atraiga la atención al análisis estático de otros usuarios de Jenkins. Y si su elección de analizador estático es PVS-Studio, estaremos muy contentos. Les invitamos a descargar y probar nuestra herramienta.

Configuración del plugin Warnings Next Generation para la integración de PVS-Studio

Si desea compartir este artículo con una audiencia de habla inglesa, le ruego que utilice el enlace a la traducción: Valery Komarov. Configuración del complemento Warnings Next Generation para la integración con PVS-Studio.

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster