Old Emmanuel Oga's Weblog (new one is at www.emmanueloga.com)

BDD en rails y “RSpec no me toma los parametros en spec.opts !!!”

Posted in rails, rspec, ruby by emmanueloga on octubre 22, 2007

Hace tiempo que investigaba la mejor manera de usar specs en mi aplicacion rails. Resulta que le he encontrado : RSpec.

En realidad me convencio Luis Lavena en una breve conversacion que tuvimos en CafeConf 2007:

“Che es verdad que rspec es dificil de usar y un plomo porque te rompe todos los spec con cada nueva version?”

“No, nada que ver! Callate!” — bueno creo que el callate lo agregue yo, pero basicamente fue asi🙂

Hasta ese momento habia estado usando test-spec, lo que no es mas que un simple wrapper sobre Test::Unit. RSpec es otra cosa, una completa libreria basada en el concepto de “Matchers“. Para dar soporte a rails, existe un plugin llamado rspec_on_rails que define muchos matchers y tasks de rake para simplificar la vida. Se recomienda instalar ambos (rspec y rspec on rails) como plugins de la aplicacion.

Al principio me asusto la presentacion medio “rara” de su documentacion (ver pagina web). Sin embargo, no es dificil agarrarle el ritmo a la sintaxis. Muy recomendable.

P.D.: Al usar RSpec on Rails, estuve un rato largo tratando de averiguar porque no me generaba el hermoso reporte html. Resulta que en el archivo spec/spec.opts cada opcion que separarias por espacios en la linea de comando hay que separarla por saltos de linea!!! (Siii… intuitivo). Por lo tanto, para lograr salida html en los reportes, spec.opts debe quedar algo parecido a esto:

–colour
–format
html:doc/results.html
–loadby
mtime
–reverse

Ahora en el directorio doc encontraran un hermoso results.html que lucira algo asi:

Salida Rspec en HTML

Gracias Nelson por el tip.

Una respuesta

Subscribe to comments with RSS.

  1. Luis Lavena said, on octubre 24, 2007 at 5:13 pm

    En realidad no te dije que te callaras, sino que callaras a todo aquel que dice que se rompe todo con nuevas versiones de RSpec!😉

    Agarrate por que se viene Stories en la proxima version, eso va a reducir la friccion entre el cliente y el desarrollador.

    Por lo menos asi, lo veo yo — dijo Nimo😀

    Saludos!

    Luis


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

A %d blogueros les gusta esto: