Nov 13 2008

Integrar los resultados de gTest en Hudson

Categoría: Integración Continua, Test UnitariosJuan @ 10:53 am

gTest puede escribir un informe sobre los tests que ha ejecutado en un fichero XML, sin embargo, este fichero no es correctamente interpretado por Hudson y, por tanto, no podemos ver cuales han sido los resultados (número de tests ejecutados, errores si los hay, etc.) ni tampoco las gráficas.

Una manera fácil y rápida de solucionar esto es transformando el fichero XML con un fichero XSL usando Ant. De esta manera, el fichero que contiene los resultados en XML es transformado en otro que Hudson puede entender mediante el uso de la opción jUnit.

Los pasos a seguir son los siguientes:

  1. Configurar Ant en Hudson (”Manage Hudson” -> “Configure System”)

    Configuración de Ant en Hudson

  2. Guardar la nueva configuración.
  3. Añadir los ficheros adjuntos build.xml y unittest.xsl al directorio raíz del proyecto en el repositorio (que espero uséis)
  4. Añadir un paso en el proceso de construcción (”Invoke Ant”) del trabajo donde estemos usando gTest (”Job Configuration” -> “Add Build Step” -> “Invoke Ant”)

    Invocar Ant al construir un trabajo

  5. Habilitar la opción “Publish JUnit test result report” en la misma ventana de configuración del trabajo.

    Publicar informe de jUnit en Hudson

  6. Guardar la nueva configuración.

Esto debería ser todo. Después de construir el trabajo una vez más deberiáis ver la gráfica actualiza y poder ver los tests uno por uno y los errores si los hay.

Etiquetas: ,

2 Responses to “Integrar los resultados de gTest en Hudson”

  1. Martin says:

    Tengo el siguiente problema cuando hago el paso 5.
    Pongo un path y me da el siguiente error:

    ‘/opt/hudson/jobs/project/workspace/project/tests/Suites/output.xml’ doesn’t match anything: ” exists but not ‘/opt/hudson/jobs/project/workspace/project/tests/Suites/output.xml’

    que es lo q’ estoy haciendo mal ?

  2. Juan says:

    Hola.

    ¿Cual es el nombre de tu “job”?, ¿es “project”?, ¿en qué directorio ejecutas “unittest” con ant?

Leave a Reply