Curso de Testing Javascript Moderno. Parte 3: estructura básica de una suite de tests

Introducción

Continuamos con nuestra serie de tutoriales sobre testing moderno para, en esta ocasión, echarle un vistazo a cómo es un bloque de test (también llamado suite) tal y como lo usaremos más adelante. Recordemos que, aunque hemos escogido MOCHA como framework para estas pruebas, la idea es similar para cualquier otro. Del mismo modo, incluso las sintaxis entre bibliotecas no cambia demasiado por lo que, si escogemos otro paquete, únicamente deberíamos revisar su documentación y traducir los siguientes ejemplos.

Metámosnos en materia…
Seguir Leyendo…

Dentro de Javascript, TDD | Etiquetas: , , , , , | 3 Comentarios

Curso de Testing Javascript Moderno. Parte 2: nomenclatura testing

General

Ya hemos visto en la entrega anterior las herramientas que vamos a utilizar pero, igual de importantes que éstas, es la distribución de ficheros que deberíamos emplear en un proyecto al que queremos aplicar tests de la forma más correcta o estándar posible.

Por lo general, los tests se recogen en ficheros independientes asociados a la vista, modelo, controlador o biblioteca sobre la que están actuando; en otras palabras, lo habitual es crear un fichero de tests por cada fichero que queremos testear.

La nomenclatura clásica establece una estructura donde todos estos ficheros quedan recogidos en un único directorio base denominado ‘test’. En su interior, podemos encontrar a su vez otras subcarpetas para clasificar las ‘suites’ según actúen sobre una u otra categoría y que suelen reflejar de forma fidedigna la estructura original del proyecto. Dicho de otro modo, en el interior de la carpeta ‘test’ tendríamos que encontrar una copia idéntica del árbol de ficheros de nuestra aplicación como si de un espejo se tratase:

Seguir Leyendo…

Dentro de Javascript, TDD | Etiquetas: , , , , , | 3 Comentarios

Curso de Testing Javascript Moderno. Parte 1: introducción y herramientas

Introducción

Ha llovido mucho desde que publiqué aquella primera introducción al TDD en Javascript; desde entonces, el lenguaje en general y esta metodología en particular, han evolucionado significativamente: tenemos nuevas herramientas, nuevos entornos, nuevas prácticas… y, como no, hace falta actualizar todo lo que ya se escribió.

Durante los siguientes posts, vamos a repasar las metodologías y herramientas más modernas para testear código Javascript. He pensado el separar este minicurso en capítulos para evitar así una entrada gigantesca que luego prácticamente nadie acaba de leer. Así, cada uno puede escoger aquella sección que le resulte más interesante o simplemente aprovechar la división para hacer los comentarios o formular las dudas de una manera más localizada.

A modo de resumen general, repasaremos de modo extraordinariamente superficial qué es esto del testing (algo que realmente no ha cambiado) para pasar a describir cuáles son las herramientas que actualmente (finales de 2013) están más de moda. En los capítulos posteriores veremos algo de nomenclatura para mantener los estándares, cómo se configura nuestra plataforma (el software) para pruebas y, finalmente, todo lo relacionado con la estructura de tests aplicadas a código real, Ajax, fixtures, mocks, stubs, etc…

Todo esto tendrá miga, así que como dijo Lao-Tsé, todo gran viaje comienza con un primer paso. Vamos a ello.

Seguir Leyendo…

Dentro de Javascript, TDD | Etiquetas: , , , , , , , , , , , | 4 Comentarios

Copiando arrays y objetos en Javascript

Introducción

Esta breve entrada viene motivada por un comportamiento especial del lenguaje Javascript del que no siempre nos percatamos hasta que no lo experimentamos a través de errores inesperados y es el que refiere a cuando tratamos de copiar objetos.

En Javascript, cuando asignamos a una variable un valor de tipo String o Boolean, estamos creando una copia de dicho objeto. Sin embargo, cuando asignamos un Array o un objeto, lo que estamos es creando una referencia a dicho valor. Veamos qué significa esto…

Seguir Leyendo…

Dentro de Javascript | Etiquetas: , , , | 11 Comentarios

Uso exótico del Switch para refactorizar código

Introduccion

Cuando trabajamos en Javascript con estructuras de control que requieren de cierta envergadura, podemos terminar con trozos de código muy enredados que presentan una complejidad ciclomática muy alta. Esto da como resultado que esas partes sean difíciles de leer y de mantener tanto por nosotros mismos pasado un tiempo, como por otros desarrolladores de nuestro equipo.

Por lo general, cuando tenemos una función o un método con una gran cantidad de ‘IFs’, es señal de que tenemos que refactorizar, dividir responsabilidades y crear nuevos métodos más pequeños que se encarguen de evaluar esas expresiones de forma independiente. Sin embargo, cuando trabajamos sobre una estructura muy rígida de ficheros, esto no siempre es fácil. Es ahí cuando conocer cómo funciona la estructura SWITCH puede ser interesante para resolver un problema.
Seguir Leyendo…

Dentro de Sin categoría | Etiquetas: , , , , | 7 Comentarios
Página 3 de 3212345...102030...Última
Licencia Creative Commons 3.0

®Copyright 2011. Cotenido web bajo licencia Creative Commons 3.0

Códigos bajo licencias MIT y GPL. Ver página de licencias para más información