Pruebas unitarias (java)
Qué son
Una prueba unitaria es aquella que verifica un aspecto muy determinado de la funcionalidad.
Cada prueba unitaria se corresponde con un requerimiento (a bajo nivel)que el código debe satisfacer.
Características
- Enfocadas a un aspecto concreto (atomicidad).
- De rápida ejecución.
- Independencia: •
• de otras pruebas. •
• del orden de ejecución.•
• del entorno(1).
- Automatizadas.
- Calidad de código como el de producción.
No son pruebas unitarias las que…
No operan de forma aislada.
Interactúan con una red.
Acceden a bases dedatos.
Acceden al sistema de ficheros.
No pueden ser ejecutadas al mismo tiempo que otras pruebas unitarias.
Deben hacer algo con el entorno (por ejemplo, leer ficheros de configuración) paraser ejecutadas.
Casos de prueba
- Un caso de prueba, o test case, determina si el código cumple con los requisitos comprendidos en el mismo.
- Los casos de prueba se recogen en una suite depruebas.
Características de los Test Cases
- Cobertura.
- Repetibles.
- Independientes.
- Profesionales.
(1)Simulación de entornos
En casos en que las pruebas unitarias debaninteractuar con un entorno, debe usarse mocks objects, código que lo simula.
Ventajas
Automatización de las pruebas.
Rapidez de verificación.
El código no es propietario (facilita laincorporación de personas al equipo).
Mayor frecuencia de integración del código.
Documentan el código con las especificaciones del mismo.
Defectos acotados y fácilmente localizables.
Ritmo detrabajo constante.
Facilidad para agregar nuevas funcionalidades al código.
Posibilita los test de regresión.
Refactoring constante, con mejora de la calidad del código.
Desventajas No descubren todos los defectos del código: determinan la presencia de éstos en el código, no su ausencia.
El código solo es tan bueno como lo sean sus pruebas.
A veces no es trivial...
Regístrate para leer el documento completo.