mi configuración es:¿Cómo hago que Jenkins, Sonar y el complemento JaCoCo trabajen juntos para Eclipse Tycho Plugin Projects (o tal vez Cobertura)?
- Jenkins 1.448
- Sonar 2.13
- Jenkins Sonar Plugin 1.72
- una base de datos MySQL para sonar
tengo el siguiente proyecto:
- Eclipse Plugin Project
- usando Maven
- múltiples módulos (proyecto Maven padre, proyecto de plugin fuente, proyecto fragmento de prueba)
- una simple prueba de JUnit probar una clase del proyecto de plugin fuente
lo que el proceso está en el momento:
- Jenkins comprueba a cabo el proyecto principal desde SVN
- Jenkins construye el proyecto y sus módulos usando Maven y Tycho
- Jenkins utiliza de éxito seguro para ejecutar las pruebas y elaborar un informe
- Jenkins utiliza el plugin Jenkins Sonar para comenzar a sonar mvn: sonar para ejecutar análisis de código
- análisis de código estático se realiza en cada módulo falla
- JaCoCo
Sonar tiene estadísticas estáticas de análisis de código disponibles y se muestra el porcentaje de éxito de prueba. Lo único que falta es la cobertura del código de JaCoCo ... o tal vez incluso la cobertura del código de Cobertura.
Realmente no me importa en este punto, solo quiero que una de estas cosas produzca resultados de cobertura de código.
Cobertura parece ser incapaz de producir resultados, posiblemente porque o - que no puede instrumentar el código - busca el código instrumentado en el lugar equivocado - no puede hacer frente a Tycho o la fuente separada/código de prueba de configuración
JaCoCo debe ser capaz de "ver" la cobertura de código sobre la marcha, pero su producción es
[INFO] [17:44:04.708] Sensor JaCoCoSensor...
[INFO] [17:44:04.717] Project coverage is set to 0% as no JaCoCo execution data has been dumped: /var/lib/jenkins/jobs/testPlugin/workspace/testSource/target/jacoco.exec
[INFO] [17:44:04.854] Sensor JaCoCoSensor done: 146 ms
[INFO] [17:44:10.587] Sensor JaCoCoSensor...
[INFO] [17:44:10.587] Project coverage is set to 0% as no JaCoCo execution data has been dumped: /var/lib/jenkins/jobs/testPlugin/workspace/testTest/target/jacoco.exec
[INFO] [17:44:10.631] Sensor JaCoCoSensor done: 44 ms
[INFO] [17:44:12.402] Sensor JaCoCoSensor...
[INFO] [17:44:12.402] Project coverage is set to 0% as build output directory doesn't exists: /var/lib/jenkins/jobs/testPlugin/workspace/testParent/target/classes
[INFO] [17:44:12.402] Sensor JaCoCoSensor done: 0 ms
¿Qué estoy haciendo mal? ¿Debo habilitar JaCoCo en mi pom.xml en alguna parte? ¿Necesito seguro? ¿Qué debo hacer para usar Cobertura?
¿Cómo le digo Sonar o Cobertura o JaCoCo dónde buscar el código instrumentado? – danowar