¿Qué describe a un buen unit test?
Opciones
- Lento pero exhaustivo, y depende de internet
- Rápido, aislado de los demás y determinista (Opción correcta)
- Prueba muchos comportamientos sin relación a la vez
- Solo corre en el servidor de CI y nunca en local
Respuesta
Rápido, aislado de otros tests y de sistemas externos, y determinista (mismo resultado en cada ejecución)
Por qué
Los buenos unit tests corren en milisegundos (así los ejecutas constantemente), no dependen de otros tests ni de la red o la base de datos (aislados) y siempre dan el mismo resultado (deterministas).
Cada test comprueba un comportamiento y tiene un nombre que lo explica. Si un test es lento o aleatorio, la gente deja de confiar en él y de ejecutarlo.
Recuerda
Buen unit test = rápido, aislado, determinista.