El lanzamiento de PVS-Studio 7.04 coincidió con el lanzamiento del complemento Warnings Next Generation 6.0.0 para Jenkins. Solo en esta versión, Warnings NG Plugin agregó soporte para el analizador estático PVS-Studio. Este complemento visualiza advertencias sobre el compilador u otras herramientas de análisis en Jenkins. Este artículo explicará en detalle cómo instalar y configurar este complemento para su uso con PVS-Studio, y también describirá la mayoría de sus características.
Instale el complemento Warning Next Generation en Jenkins
Por defecto, Jenkins se encuentra en
http: // localhost: 8080 . En la página principal de Jenkins, en la esquina superior izquierda, seleccione "Administrar Jenkins":
A continuación, seleccione el elemento "Administrar complementos", abra la pestaña "Disponible":
En la esquina superior derecha del campo de filtro, ingrese "Advertencias de la próxima generación":
Encontramos el complemento en la lista, colocamos una marca de verificación a la izquierda y hacemos clic en "Instalar sin reiniciar":
Se abrirá la página de instalación de complementos. En él veremos los resultados de la instalación del complemento:
Crear una nueva tarea en Jenkins
Ahora cree una tarea con una configuración libre. En la página de inicio de Jenkins, seleccione "Nuevo elemento". Ingrese el nombre del proyecto (por ejemplo, WTM) y seleccione "Proyecto de estilo libre".
Haga clic en Aceptar, y luego se abrirá la página de configuración de tareas. Al final de esta página, en el elemento "Acciones posteriores a la compilación", abra la lista "Agregar acción posterior a la compilación". En la lista, seleccione "Grabar advertencias del compilador y resultados de análisis estático":
En la lista desplegable del campo "Herramienta", seleccione "PVS-Studio", luego haga clic en el botón Guardar. En la página de tareas, haga clic en "Crear ahora" para crear una carpeta en el espacio de trabajo de Jenkins para nuestra tarea:
Obteniendo resultados de construcción del proyecto
Hoy, en las tendencias de Github, me encontré con el proyecto dotnetcore / WTM. Lo descargué de Github, lo puse en el directorio de ensamblaje de WTM en Jenkins y lo analicé en Visual Studio usando el analizador PVS-Studio. Una descripción detallada del uso de PVS-Studio en Visual Studio se presenta en el artículo del mismo nombre:
PVS-Studio para Visual Studio .
Empecé a construir el proyecto en Jenkins un par de veces. Como resultado, apareció un gráfico en la parte superior derecha de la página de tareas WTM en Jenkins, y el elemento del menú
PVS-Studio Warnings apareció a la izquierda:
Al hacer clic en el gráfico o en este elemento del menú, se abre una página con la visualización del informe del analizador PVS-Studio por el complemento Warnings Next Generation:
Página de resultados
En la página de arriba hay dos gráficos circulares. A la derecha de los gráficos hay una ventana de gráfico. Debajo hay una tabla.
El gráfico circular de la izquierda muestra la correlación de advertencias de diferentes niveles de peligro, y el de la derecha muestra la correlación de advertencias nuevas, no fijas y corregidas. Hay tres gráficos. El gráfico que se mostrará se selecciona con las flechas izquierda y derecha. Los dos primeros gráficos muestran la misma información que los diagramas y el tercero, el cambio en el número de alertas.
Como puntos de gráficos, puede seleccionar ensamblajes o días.
También es posible reducir y ampliar el rango de tiempo del gráfico para ver los datos de un período determinado:
Puede ocultar los gráficos de ciertas métricas haciendo clic en la designación de métrica en la leyenda del gráfico:
El gráfico después de ocultar la métrica "Normal":
En la parte inferior hay una tabla que muestra los datos del informe del analizador. Cuando hace clic en un sector de un gráfico circular, la tabla se filtra:
La tabla tiene varias pestañas para filtrar datos. En este ejemplo, el filtrado por espacio de nombres, archivo, categoría (nombre de advertencia) está disponible. En la tabla, puede elegir cuántas advertencias mostrar en una página (10, 25, 50, 100):
Es posible filtrar datos por la línea ingresada en el campo "Buscar". Ejemplo de filtrado para la palabra "Base":
En la pestaña Problemas, cuando hace clic en el signo más al comienzo de la fila de la tabla, se mostrará una breve descripción de la advertencia:
La breve descripción contiene un enlace al sitio con información detallada sobre esta advertencia.
Al hacer clic en los valores en las columnas "Paquete", "Categoría", "Tipo", "Severidad", los datos de la tabla se filtran por el valor seleccionado. Filtrado por categoría:
La columna Edad muestra cuántas compilaciones sobrevivieron a esta advertencia. Al hacer clic en un valor en la columna Edad, se abrirá la página de ensamblaje en la que apareció esta advertencia por primera vez.
Al hacer clic en el valor en la columna "Archivo" se abrirá el código fuente del archivo en la línea con el código que causó la advertencia. Si el archivo no está en el directorio de ensamblaje o se movió después de crear el informe, será imposible abrir el código fuente del archivo.
Conclusión
Advertencias Next Generation ha demostrado ser una herramienta de visualización de datos muy conveniente en Jenkins. Esperamos que el soporte de PVS-Studio con este complemento ayude enormemente a aquellos que ya usan PVS-Studio, y también llame la atención sobre el análisis estático de otros usuarios de Jenkins. Y si como analizador estático su elección recae en PVS-Studio, estaremos muy contentos. Te invitamos a
descargar y probar nuestra herramienta.

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