Reportes en Jenkins

Si bien últimamente vengo trabajando muy felizmente con Travis, una de las funcionalidades que extraño mucho son los reportes. Cuando trabajo con Jenkins suelo hacer que mis jobs de CI muestren diversos reportes.

Hay dos estrategias para mostrar reportes en Jenkins:

  1. Utilizar las capacidades de reporting de Jenkins, ya sea nativas o con plugins, o bien
  2. Hacer que cada herramienta que forma parte del build genere sus propios reportes y luego simplemente hacer que Jenkins provea acceso a dichos reportes.

Un ejemplo del primer caso es el plugin de Cucumber-jvm que genera un reporte como el de la figura 1.

cucumber_jenkins
Figura 1

Un ejemplo similar pero usando la segunda estrategia sería ejecutar cucumber especificando que genere output HTML y luego usar el plugin Sidebar link de Jenkins para linkear el reporte generado por cucumber. En figura 2 se ve un caso de esta estrategia donde Jenkins provee links un reporte de features generado por cucumber y otro de coverage generado por SimpleCov. La figura 3 muestra cómo configurar los links a los reportes una vez instalado el plugin.

reportes_jenkins
Figura 2

 

sidebar_links
Figura 3

 

Anuncios

7 comentarios en “Reportes en Jenkins

  1. Hola Nico,

    Gracias por el post! Con mi equipo estamos usando el plugin de Cucumber JVM para Jenkins. En general estamos contentos. Pero creemos que hay que usarlo con ciertos cuidados, ya que todavía está un poco verde.
    Hemos detectado algunos bugs y nos vimos obligados a intentar distintas alternativas de uso. Principalmente tuvimos problemas con la generación de features con background y con la generación del reporte cuando no usamos el lenguaje default (trabajamos para un cliente local con lo cual escribimos las specs en español).
    No obstante, a pesar de estas cuestiones recomendamos usar el plugin. Encontramos que aporta muchísimo valor a nuestro proceso de desarrollo.
    Saludos!

    1. Interesante, gracias por la data.
      De paso te consulto, ¿Que IDE utilizan para desarrollo? ¿Le pusieron algún plugin para Cucumber?

      Saludos!

      1. Hola Nico! Colgué con la respuesta… algunos meses!! =P

        Como IDE estamos usando Eclipse, sin plugins para Cucumber. Corremos todo con Maven o Graddle (dependiendo del caso) siempre desde la consola. Para escribir las specs usamos Sublime Text y un plugin que te colorea la sintaxis de Gherkin y queda todo muy bonito. Entiendo que en el presente hay un plugin para Eclipse pero no lo probé.

        Por otra parte (y ya no con mi equipo de desarrollo) en el contexto de Python y Lettuce empleo PyCharm con un plugin para sintaxis de Gherkin. Es idéntico al de Specflow! (que usé en menor medida, ya que no me especializo en .Net por cuestión de principios! =P)

        Un abrazo!

      2. Interesante lo de plugin de Sublime, lo voy a buscar.
        Curiosidad ¿probaron JBehave? ¿Por alguna razón se inclinaron por Cucumber-JVM en lugar de JBehave?

  2. Buenas!
    Por si no encontraste el plugin de Gherkin para Sublime Text, acá va:

    Respecto de JBehave y Cucumber-JVM; te puedo decir, Nico, que me pareció que la implementación del primero en muchos casos es un tanto más rebuscada que con Cucumber-JVM.

    Por ejemplo, el soporte multilenguaje que tiene Cucumber es excelente. Muy fácil de manejar. Tanto, que como bien sabés alcanza con definir #language: al inicio de la feature y listo. En el caso de JBehave, no es tan sencillo. Hay que agregar determinada configuración en un archivo XML donde hay un montón de otras cosas. Si lo considerás de valor, te puedo dar uno o dos ejemplos más de cosas que me parecieron un tanto vuelteras para configurar. En Cucumber, como te decía me parece que todo es más fácil de implementar. Con muy poquito código (apenas una clase donde se configura el runner mediante una java annotation) y una mínima configuración a nivel proyecto java, tenés las specs corriendo.

    De cualquier forma, creo que lo que más me llevó a usar Cucumber es la comunidad de usuarios y contribuyentes que tiene detrás. Creo que en estos últimos años ha sido el framework BDD que más terreno ganó en el mercado. Entonces, cuando uno tiene un problema (que al menos a mí me pasa seguido =P ) tener múltiples alternativas para buscar referencias vale muchísimo.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s