Integración de las pruebas unitarias con Maven

RECU-0371 (Recurso Herramienta)

Descripción

Las pruebas unitarias tienen su fase en el ciclo de vida del software con Maven2, concretamente la fase test. Para ejecutar estas pruebas unitarias podemos usar el plugin Surefire que nos permite tener pruebas hechas con JUnit, TestNG o POJOs y generar el informe con los resultados de los test y su cobertura.

Uso en MADEJA

Para ejecutar las pruebas unitarias y verificar su grado de cobertura debemos incluir en el fichero pom.xml del proyecto la configuración para el área de informes y las dependencias del framework de pruebas unitarias que usemos.

Por ejemplo para usar testng deberemos añadir la dependencia con su versión concreta

<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>4.7</version>
    <scope>test</scope>
    <classifier>jdk15</classifier>
  </dependency>

Si queremos usar JUnit tendremos que añadir las dependencias concretas de las librerías de JUnit. Para que se genere el informe y sea accesible desde el site del proyecto añadiremos al pom.xml lo siguiente:

<reporting>
...
    <!-- Informes de las pruebas unitarias-->
    <plugin>
           <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-surefire-report-plugin</artifactId>
       <version>2.4.2</version>
    </plugin>
...
</reporting>

Para ejecutar todos los test asociados a la fase de tests unitarios en Maven:

mvn surefire:test

Como se ha mencionado anteriormente, los test unitarios estan asociados a la fase test y si ejecutamos otros goals de Maven asociados a fases posteriores como package por defecto también se ejecutaran estos tests. Si se desea, se puede modificar este comportamiento modificando la propiedad maven.test.skip.

Si ejecutamos el goal site podemos ver el informe con los resultados dentro del área de informes del proyecto.

Se da un ejemplo de la sección completa de reporting en el siguiente enlace.

Enlaces externos

Contenidos relacionados

Recursos
Área: Verificación » Verificación de Entrega Software
Código Título Tipo Carácter
RECU-0370 Reporting de Maven Herramienta Recomendado