Ejecución de un análisis en sonar con el soporte de una tarea ant.

0
49374

Ejecución de un análisis en sonar con el soporte de una tarea ant.

0. Índice de contenidos.


1. Introducción

Hace poco veíamos cómo
ejecutar de tests unitarios con junit en proyectos ant y su integración en jenkins y sonar para medir la cobertura
, pero…
¿y si no disponemos del soporte de jenkins?, lo bueno de jenkins es que integra sonar runner que permite lanzar los análisis en sonar por
cada build; pero si no tenemos jenkins, disponemos de otro producto de integración contínua o simplemente no
disponemos de una herramienta de integración contínua… siempre nos quedará ant.

En este tutorial vamos a exponer la configuración de una tarea ant que nos permita lanzar la ejecución de un análisis en sonar de
un proyecto gestionado con ant.


2. Entorno.

El tutorial está escrito usando el siguiente entorno:

  • Hardware: Portátil MacBook Pro 15′ (2.4 GHz Intel Core i7, 8GB DDR3 SDRAM).
  • Sistema Operativo: Mac OS X Lion 10.7.4
  • Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
  • ANT 1.8.2
  • Sonar 3.5.1


3. Configuración.

Dos pasos muy simples:

  • por un lado debemos descargarnos la distribución de sonar-ant-task-2.1.jar, de la siguiente ubicación
    http://docs.codehaus.org/display/SONAR/Installing+and+Configuring+SonarQube+Ant+Task
    y copiar el jar en el directorio de librerías de nuestro proyecto, y
  • por otro lado debemos incluir una tarea en nuestro build.xml como la que sigue

Al igual que haríamos en la configuración de sonar runner de jenkins
debemos añadir las propiedades que permitan la ejecución en la tarea de ant, para:

  • acceder a la base de datos de sonar,
  • establecer la clave, descripción y versión del proyecto,
  • idioma de análisis, ubicación de los fuentes, clases y tests, y, por último,
  • indicar el plugin de cobertura y donde se ubican los informes generados por la tarea anterior.

Por último, nuestra tarea dependerá de la tarea de tests para que, al ejecutarse, estén disponibles las métricas de tests de junit y cobertura.

Con todo ello, dispondríamos de las métricas de calidad, incluyendo las de tests y cobertura.


4. Referencias.

  • http://docs.codehaus.org/display/SONAR/Analyzing+with+SonarQube+Ant+Task
  • http://docs.codehaus.org/display/SONAR/Installing+and+Configuring+SonarQube+Ant+Task


5. Conclusiones.

Ahora solo quedaría invocar a la tarea de ant bien desde el sistema de integración contínua o a demanda
desde cualquier equipo de desarrollo; para ello, con esta configuración, debemos tener acceso a la base de datos vía jdbc.

Un saludo.

Jose

jmsanchez@autentia.com

Dejar respuesta

Please enter your comment!
Please enter your name here