Ir al contenido principal

Entradas

Mostrando entradas de julio, 2010

Unit Testing & jMock: expectations comunes

Llega un momento en que algunos de nuestros juegos de prueba empiezan a tener muchas expectations y se empieza a complicar la implementación de nuevos tests o el mantenimiento de los existentes. Una de las consecuencias de aplicar TDD es que cuánto mayor sea la complejidad del test, mayor será la complejidad de nuestro código, y por lo tanto, de su mantenimiento. Así que si empezamos a tener tests con demasiadas expectations , es buen momento para plantearse el refactoring de alguna de las clases, para simplificar o dividir su funcionalidad. Si aún así seguimos mantiendo unas expectations muy largas, y que además se comparten entre varios tests, es muy recomendable agruparlas. Gracias a la implementación de jMock , podemos declarar varios bloques de expectations en un mismo test, de tal modo que la prueba deberá cumplir las condiciones de todos sus bloques: @Test public void testFindHouseShouldReturnOneHouse() throws Exception { mockery.checking(new Expectations() {