2011-03-30 13 views

Respuesta

9

Jenkins (o Hudson) puede ejecutar cualquier cosa que pueda ejecutar desde la línea de comandos como parte del proceso de compilación.

Si desea utilizar específicamente lcov, puede:

  • Instalar lcov en el servidor de compilación, agregar un paso de compilación que lo ejecuta y archivar los artefactos.
  • Agregue una instalación LCOV en su repositorio y agregue un paso de compilación similar.

Si buscas una herramienta de cobertura de código, el complemento Cobertura puede ser lo que estás buscando.

+0

Utilicé el [gcovr] (https://software.sandia.gov/trac/fast/wiki/gcovr) para crear el xml que el complemento de Cobertura estaba buscando ... –

+2

teniendo muchos problemas con gcovr. Parece que quiere hacer lo suyo, no lo que yo quiero – Stephen

+2

Otra opción es la secuencia de comandos [lcov_cobertura] (https://github.com/eriwen/lcov-to-cobertura-xml) para convertir los resultados de LCOV en XML compatibles con Cobertura para el plugin Cobertura de Jenkins. –

4

Prefiero el plugin Cobertura a lcov porque presenta los resultados directamente en cada informe de compilación y no copia el código fuente completo para cada compilación. La información que presentan es muy similar.

Lamentablemente, no es compatible con gcov directamente, pero hay un script de Python llamado gcovr que produce salida compatible con Cobertura para Jenkins. This article explica cómo configurarlo.

También puede ejecutar ambas herramientas de cobertura en cada compilación, ya que ambas utilizan la misma entrada de gcc.

+0

¿Cobertura podría funcionar con los programas de Objective-C, específicamente, las aplicaciones de iOS? –