Abel Muiño

home

Ruby on Rails y Hudson: Test Report

16 Aug 2010

Aunque ejecutar los tests de un proyecto Rails en Hudson es muy sencillo y no necesita nada especial, hacer que Hudson entienda lo que Rails (Test::Unit, en realidad) está haciendo es otra cosa.

Para poder ver un gráfico como el que tienen nuestros proyectos Java (JUnit, en realidad), hace falta un poco de grasa para suavizar la relación.

Para esto, existe el plugin de rails ci_reporter, que traduce los resultados de Test::Unit a algo que Hudson puede entender… el formato XML de junit.

Para una aplicación Rails de toda la vida habrá que hacer tres cosas:

gem install ci_reporter

(Si no usas rvm entonces seguramente tengas que poner un sudo delante).

require 'rubygems'
gem 'ci_reporter'
require 'ci/reporter/rake/test_unit'
rake ci:setup:testunit test

Estos comandos son por defecto_, para pruebas con Test::Unit. Si usamos otro framework, cambian. La documentación originalreporter/ lo explica bien.

Por defecto, los informes de las pruebas se generan en test/reports/ dentro del proyecto. Sólo hay que indicarle a Hudson que los lea tocando la configuración del proyecto.

Y acordarse de cambiar el comando para que invoque a ci_reporter en cada ejecución:

Listo, ejecuta un par de builds para poder ver el gráfico… ¡y a otra cosa!