Entradas

Mostrando las entradas etiquetadas como tdd

Kata FizzBuzz: Javascript, BDD y APIs fluidas

Durante el día de hoy he tenido algo de tiempo libre y he decidido hacer la Kata FizzBuzz. Algunos os preguntareis, ¿y qué es es eso de la Kata FizzBuzz?, es más ¿qué es una Kata?. ¿Eso no es algo de Karate?. Pues sí, en muchas artes marciales se practican Katas para interiorizar una serie de movimientos preestablecidos, es decir que los aprendamos de manera tan automática que salgan solos. En el desarrollo de software se puede hacer lo mismo practicando con algunos problemas sencillos, lo importante no es resolver el problema en si mismo sino interiorizar una serie de buenas prácticas mientras lo resolvemos (TDD, refactorización, etc). La Kata FizzBuzz en concreto es un problema MUY sencillo, que se puede ver en este enlace . A grandes rasgos lo único que hay que hacer es crear una programa que dado un número se comporte de la siguiente manera. Devuelve fizz si el número es divisible por 3. Devuelve buzz si el número es divisible por 5. Devuelve fizzbuzz si el número es divisibl...

Curso de TDD con Carlos Blé (día 1)

Imagen
Hoy ha sido el primer día del curso de TDD que estamos celebrando en AvanTIC de la mano de Carlos Blé, y escribo esta entrada para reflexionar sobre lo que hemos aprendido hoy, espero que te guste. Debo aclarar antes de que continues que no es una entrada introductoria y doy por supuesto que sabes lo que es TDD y otros conceptos de desarrollo ágil. Introducción Allá por el año 2009 (como si fuese una fecha muy lejana) tuve la oportunidad de hacer por primera un curso de TDD con Carlos Blé, ya había leído algo sobre el tema y había conocido a Carlos en la facultad, pero no había tenido relación con él. ¿Por qué hacer este curso por segunda vez?, pues usando las palabras de Dalton Rusell, personaje de Clive Owen en Plan Oculto, porque puedo. También puedo decir que Carlos ha mejorado mucho y aprendido muchas cosas a lo largo de estos años dando cursos, por lo que es una buena oportunidad para reforzar conceptos y revisar mi TDD :-) y no solo al lado de Carlos, sino junto a mis compañ...

Trucos al aplicar TDD

La semana pasada estuve leyendo una entrada del blog "the urban canuk, eh" que trataba sobre Test-Driven Development y he de admitir que me parecio una entrada bastante interesante con una serie de consejos que considero recomendables. Me gustaría hacer un resumen de los puntos que me parecieron más interesantes. Utilizar nombres consistentes en las clases de tests. Es conveniente que todas la clases de tests tengan un sistema de nombres consistente y homogéneo, por ejemplo que todas ellas tengan nombres como <TargetClass >TestCase (es decir el nombre de la clase que deseamos probar seguido de TestCase), y no que una se llame LoginTest, otra RepositoryTestCase, o lo que es peor aún que incluso ni siquiera se haga referencia a que es una clase de tests. Esto logrará que cualquier persona que trabaje en el proyecto pueda localizar los tests de forma sencilla y rápida. Usar los mismos espacios de nombre para tests y código a probar. He visto más de una vez que hay...