Volviendo a la estratosfera!


He aquí yo, luego de un largo viaje por el inframundo, complicado como siempre, pero sigo los pasos de un ermitaño en sus cuevas, escuchando a Alfred Schnittke en su Gogol Suite VII, un jueves 31 de diciembre a las 0:16 mientras estudio Vigilancia Tecnológica, si aunque parezca mentira, todo junto, y ahora me detengo a escribir, para retomar un hábito que había dejado abandonado.

Hace unos cuantos días vengo en una larga discusión interna sobre como programar Javascript en interfaces web de manera eficiente, estoy intentando optimizar mis códigos al máximo y quizás, un día de éstos que tenga un poco de tiempo podré explayar más aún mis técnicas en esto.

Pero lo que me ha llamado la atención ha sido una poderosa herramienta para Javascript, algo llamado FireUnit.

Atención:  Si no tienes ni idea ni te interesa saber que es Firefox, Mozilla, Javascript, etc. Te recomiendo que no continues leyendo el artículo, quizás sea una pérdida de tiempo. De lo contrario puedes continuar.

La herramienta FireUnit nos permite realizar test unitarios en funciones que incorporamos en nuestro código, de manera tal de poder realizar pruebas más exhaustivas,  recomiendo utilizarla cuando se tratan de funciones de nivel crítico, lo digo porque en tiempos de desarrollo podemos perder invertir (Ipse dixit) demasiado tiempo en funciones que no requieren mayor detalle.

Se que quizás muchos no la vayáis a utilizar pero es interesante como llegar a crear una auditoría en este sentido en la interfaz del usuario.

FireUnit nos permite emular eventos del navegador para realizar las pruebas:

var input = document.getElementsByTagName(”input”)[0];
fireunit.mouseDown( input );
fireunit.click( input );
fireunit.focus( input );
fireunit.key( input, “a” );

Para poder visualizar los resultados de FireUnit, debemos abrir la barra de Firebug y seleccionar la pestaña que dice Test y obtendremos una vista parecida a ésta:

FireUnit

Los mensajes que devuelve, podemos generarlo mediante los tests que incorporamos en nuestras funciones.

fireunit.compare(
"Texto1",
"Texto1",
"Los textos son iguales?"
);

Lo que hace la instrucción detallada arriba es comparar dos textos, en caso de coincidencia el test ha pasado satisfactoriamente, en caso negativo será un test Fallido (recordad reemplazar las dos lineas que dicen Texto1 por las variables que vayan a comparar, sino esto no tendrá efecto ninguno).

Otra ocasión es comparar un boolean básico:

fireunit.ok(true, "Boolean true?");

Las siguientes instrucciones nos permiten emular diferentes comportamientos de eventos en el navegador:


click(node) – Simula un click en el nodo DOM HTML especificado.

focus(node) – Simula un evento focus en el nodo DOM HTML especificado.

id(id) – Atajo para hacer document.getElementById().

key(node, letter) – Simula un evento de click en una tecla del teclado en un nodo DOM HTML, por ejemplo un Input Text. (Útil para hacer pruebas de validación de campos).

mouseDown(node) – Simula un evento onmousedown de un nodo DOM HTML.

value(node, text) – Asigna un texto a la propiedad value de un nodo DOM HTML.

Obviamente que todo esto es un resumen, y si realmente deseas indagar más sobre ésta funcionalidad te recomiendo que visites los links en los que me apoyo como fuentes de información.
Todo lo que desees aportar será bien recibido.

Saludos y hasta el próximo post!

Acerca de fabiancouto

Nacido en Montevideo, Desarrollador de software en @brujula_talk & owner de @TrabajoBalear. Adicto a la ironía y al sarcasmo. En busca de sabiduría y felicidad.

Publicado el 31 diciembre, 2009 en Javascript, Tecnología y etiquetado en , , , . Guarda el enlace permanente. Deja un comentario.

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: