Hemos visto en el post anterior cómo extraer el código ABAP utilizando el extractor proporcionado por Sonar.
Ahora vamos a hacer nuestro primer análisis … pero no con el código que hemos recuparado con el extractor.
De hecho, la primera vez que voy para un análisis con una nueva tecnología, voy a empezar una prueba con un código que puedes estar seguro de que no tiene problema, un código ya probado y comprobado por Sonar y descargable a partir de esta página: Sonar Project Examples.
Esta página contiene vínculos a otras páginas en las que puedes navegar para encontrar diferentes ejemplos de proyectos o simplemente descargar un archivo comprimido.
En este archivo, encontramos un directorio ..\projects\languages\ con diferentes subdirectorios de código fuente, incluyendo el que nos interesa, en una carpeta ‘abap’. Una vez descomprimido, voy a copiar este directorio en mi entorno de análisis, y cambiar el nombre en ‘SonarAbap’ para diferenciarlo del código extraído anteriormente.
Ahora tenemos:
- Una carpeta ‘src’ con 2 ficheros ‘ZBCMKZ17.abap’ y ‘ZZBGS106.abap’ (recuerdate las nomenclaturas ABAP en esta pagina),
- Un fichero ‘sonar-project.properties’ con los diferentes parametros para configurar nuestro análisis.
Configuración del análisis
Vamos a realizar nuestro análisis con Jenkins, sin presentar los detalles de su creación, puesto que ya sabes hacerlo para las aplicaciones Java. Si eres un consultor SAP y/o nunca has utilizado Sonar y Jenkins, ni tampoco los tienes instalados, nuestra próxima serie te enseñará como hacer una instalación completa de un entorno de análisis Sonar.
Necesitamos identificar algunos parámetros genéricos, como el nombre del proyecto o el numero de versión, y por supuesto el lenguaje. Por último, indicamos la ubicación del código:
En el ejemplo anterior, los parámetros son los mismos que en el archivo ‘properties’ proporcionado por Sonar. Simplemente, el directorio raíz (project.home) es donde he copiado el código en mi entorno de análisis en ‘C :\SRC\ABAP\SonarAbap’ (cuidado que debes usar una barra ‘/’ en el parametro).
Ahora podemos ejecutar nuestro análisis y verificar los resultados.
Validación de análisis
Para validar nuestro análisis inicial, vamos a comprobar el log de Jenkins.
En primer lugar, el siguiente mensaje …
nos dice que el análisis se llevo a cabo correctamente y que los resultados están disponibles en el panel de control Sonar. Navegando rápidamente en la página de log, no veo ningún mensaje acerca de cualquier problema. Un mensaje de tipo ‘warning’ (sin interrumper el análisis) podría indicar un problema de parser y que un archivo ne se ha analizado correctamente, pues es siempre bueno comprobar el log.
Vamos a ver en el dashboard Sonar los resultados de nuestro análisis inicial:
Y defectos en el código:
Para los dos ficheros analizados:
Hemos visto cómo configurar nuestro primer análisis de código ABAP. Podemos replicarlo fácilmente en Jenkins y cambiar los parámetros de ubicación del código (project.home).
También pudimos comprobar los resultados de este análisis, en el log de Jenkins y en Sonar.
Más adelante veremos cuáles son las mejores prácticas de código ABAP, con el fin de presentar una auditoría de la calidad del código ABAP y recomendar un plan de acción.
Esta entrada está disponible también en Lire cet article en français y Read that post in english.