maven-plugin maven-3 hudson-plugins cobertura

maven plugin - El complemento Maven Cobertura no genera cobertura.xml



maven-plugin maven-3 (8)

Estoy intentando generar un cover.xml para poder referenciarlo en el complemento Cobertura de Hudson, pero el archivo no se está creando.

He añadido lo siguiente a mi POM

<reporting> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.5.1</version> <configuration> <formats> <format>html</format> <format>xml</format> </formats> </configuration> </plugin> </plugins> </reporting>

Después de ejecutar mvn cobertura: cobertura, el sitio HTML se genera como se esperaba en ** / target / site / cobertura, pero la cobertura.xml no se encuentra en ninguna parte. ¿Qué me estoy perdiendo / malentendido?

Estoy corriendo Maven 3.0.3


Actualice su archivo POM como

<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.7</version> <configuration> <formats> <format>html</format> <format>xml</format> </formats> </configuration> </plugin> </plugins>

Esto funcionó para mí: la razón probable es que contiene la última versión de cobertura-maven-plugin (2.7)


Agregue las siguientes líneas a los objetivos de su aplicación: (configure la sección de la aplicación en jenkins)

cobertura:cobertura -Dcobertura.report.format=xml

Cambios en pom.xml:

<reporting> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.6</version> <configuration> <formats> <format>html</format> <format>xml</format> </formats> </configuration> </plugin> </plugins>


Hay dos formas de integrar Cobertura en Maven.

  1. Coloque Cobertura en la sección de compilación del archivo pom, luego debe ejecutar mvn clean cobertura: cobertura para generar los informes. Si tiene configurados XML y HTML, entonces obtiene ambos informes.
  2. Coloque Cobertura en la sección de informes del archivo pom, luego tendrá que ejecutar el sitio de mvn clean para generar los informes. Si tiene configurados XML y HTML, entonces obtiene ambos informes. Además, obtiene un sitio generado (abrir target / site / index.html) con todos los informes integrados, por ejemplo Coberture, Checkstyle, ...

Mi objetivo era conseguir que Cobertura ejecutara mvn test sin parámetros de línea de comando adicionales. Aquí está el XML mágico que me sirvió, ya que tanto el HTML como el XML se generan en /target/site/cobertura .

<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.7</version> <executions> <execution> <id>cobertura</id> <phase>test</phase> <goals> <goal>cobertura</goal> </goals> <configuration> <formats> <format>xml</format> <format>html</format> </formats> </configuration> </execution> </executions> </plugin> </plugins> </build>


Pongo el plugin en la sección de compilación y funciona:

<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.5.1</version> <configuration> <formats> <format>html</format> <format>xml</format> </formats> </configuration> </plugin> </plugins> </build>

La sección de informes y sus diferencias con la sección de complementos se describen here . No sé si se trata de un problema de Maven [3.0.4] o de cobertura-plugin.


Tengo el mismo problema usando 2.6 del plugin.

Encontré que cuando especifico ambos tipos, solo obtuve html.

<formats> <format>html</format> <format>xml</format> </formats>

Pero cuando especifico solo xml, obtengo un informe xml.

<formats> <format>xml</format> </formats>

Este es probablemente un error en el complemento.

Otro usuario sugirió crear dos ejecuciones. Lo intenté sin éxito (lo que significa que obtuve html, pero no xml).


Todavía soy bastante novato con las conexiones entre Maven Plugins y Hudson y sus complementos, por lo que no es una respuesta inteligente, pero la ayuda en Google es muy escasa para este problema, así que espero que ayude a alguien en el futuro.

Después de pasar unas horas más jugando con la configuración, descubrí que la cobertura.xml simplemente no parece estar construida localmente.

Esta es la combinación que lo hizo funcionar:

  1. Había cambiado mi versión a 2.2 en mi POM (estaba obteniendo errores de Apache con 2.5.1)
  2. Se agregó cobertura: cobertura en mi meta de Hudson.
  3. Establezca el patrón de cobertura de Cobertura en el valor recomendado ** / target / site / cobertura / cover.xml

Tuve el mismo problema pero se resolvió en este momento: solo agrega -Dcobertura.report.format=xml después de tu comando de Maven. Deberia de funcionar