Foro sobre Java EE > Test Unitarios
DBUnit te ayuda a tener un juego de datos básico para los tests de junit.
Saludos
Como toda buena respuesta tiene que empezar, depende :).
Lo ideal es que pruebe una sola funcionalidad.Si no, si falla el test de actualización, no sabras si es debido al de insertar o actualizar.
Sin embargo, puede ser que el servicio de insertar un usuario actualice varias tablas, con lo que el esfuerzo de realizarlo y mantenerlo se convierte en algo costoso.
Indudablemente es mejor y borrar los datos de prueba al final del test. De esa manera puedes repetir las pruebas a menudo sin polucionar mucho la base de datos.
Es más, en algún proyecto en que he estado, las pruebas de integración continua regeneraban la base de datos desde cero, para comprobar que la base de datos era "limpia" y los datos "basura" de un test no afectaban a otros test.
DBUnit, con sus DataSets te permite dejar la base de datos a 0 y cargarla al inicio de los tests.
Saludos
Estoy haciendo test unitarios (Junit), realice uno en el que se llama a un servicio que ingresa un usuario y verifica sus datos, ahora me toca hacer uno de actualización y me surgen las siguientes dudas en cuanto a buenas prácticas:
- Es bueno primero realizar la llamada al servicio crear y luego al actualizar dentro del test actualizar? (No me refiero a llamar al test anterior, sino al servicio).
- Es mejor crear los datos sobre los cuales se les realizara las pruebas y luego borrarlos con un @before y @after respectivamente sin depender de los servicios que realicen este trabajo?.
Gracias =)