+54 9 351 303-5806

PRUEBAS UNITARIAS - CARACTERÍSTICAS Y BENEFICIOS

Las pruebas unitarias o Unit testing, forman parte de los diferentes procedimientos que se pueden llevar a cabo dentro de la metodología ágil. Son principalmente trozos de código diseñados para comprobar que el código principal está funcionando como esperábamos. Pequeños test creados específicamente para cubrir todos los requisitos del código y verificar sus resultados.

El proceso que se lleva a cabo, consta de tres partes. El Arrange, donde se definen los requisitos que debe cumplir el código principal. El Act, el proceso de creación, donde vamos acumulando los resultados que analizaremos. Y el Asert, que se considera el momento en que comprobamos si los resultados agrupados son correctos o incorrectos. Dependiendo del resultado, se valida y continúa, o se repara, de forma que el error desaparezca.

Características principales

  • Automatizable; Aunque los resultados deben ser específicos de cada test unitario desarrollado, los resultados se pueden automatizar, de forma que podemos hacer las pruebas de forma individual o en grupos.
  • Completas; El proceso consta de pequeños test sobre parte del codigo, pero al final, se debe comprobar su totalidad.
  • Repetibles; En el caso de repetir las pruebas de forma individual o grupal, el resultado debe ser siempre el mismo dando igual el orden en que se realicen los test, los tests se almacenan para poder realizar estas repeticiones o poder usarlos en otras ocasiones.
  • Independientes; Es un código aislado que se ha creado con la misión de comprobar otro código muy concreto, no interfiere en el trabajo de otros desarrolladores.
  • Rápidos de crear; a pesar de lo que muchos desarrolladores opinen, el código de los tests unitarios no debe llevar más de 5 minutos en ser creado, están diseñados para hacer que el trabajo sea más rápido..

Ventajas de pruebas unitarias

1. Proporciona un trabajo ágil; Como procedimiento ágil que es, te permite poder detectar los errores a tiempo, de forma que puedas reescribir el código o corregir errores sin necesidad de tener que volver al principio y rehacer el trabajo. Puesto que las pequeñas se van haciendo periódicamente y en pequeños packs. Disminuyendo el tiempo y el coste.

2. Calidad del código; Al realizar pruebas continuamente y detectar los errores, cuando el código está terminado, es un código limpio y de calidad.

3. Detectar errores rápido; A diferencias de otros procesos, los tests unitarios nos permiten detectar los errores rápidamente, analizamos el código por partes, haciendo pequeñas pruebas y de manera periódica, además, las pruebas se pueden realizar las veces que hagan falta hasta obtener el resultado óptimo.

4. Facilita los cambios y favorece la integración; Los tests unitarios, nos permiten modificar partes del código sin afectar al conjunto, simplemente para poder solucionar bugs que nos encontramos por el camino. Los tests unitarios, al estar desglosados en bloques individuales permiten la integración de nuevas aportaciones para hacer un código más complejo o actualizarlo en función de lo que el cliente demande.

5. Proporciona información; Gracias al continuo flujo de información y la superación de errores, se puede recopilar gran cantidad de información para evitar bugs venideros.

6. Proceso debugging; Los Tests unitarios ayudan en el proceso de debugging. Cuando se encuentra un error o bug en el código, solo es necesario desglosar el trozo de código testeado. Esta es uno de los motivos principales por los que los tests unitarios se hacen en pequeños trozos de código, simplifica mucho la tarea de resolver problemas.

7. El diseño; Si primero se crean los tests, es mucho más fácil saber con anterioridad cómo debemos enfocar el diseño y ver qué necesidades debemos cumplir. Testeando una pieza del código, también puedes saber que requisitos debe cumplir, y por eso mismo te será mucho más fácil llegar a una cohesión entre el código y el diseño.

8. Reduce el coste; Partiendo de la base que los errores se detectan a tiempo, lo cual implica tener que escribir menos código, poder diseñar a la vez que se crea y optimizar los tiempos de entrega, vemos una clara relación con una reducción económica.

Es necesario saber que las pruebas unitarias por sí solas, no son perfectas, puesto que comprueban el código en pequeños grupos, pero no la integración total del mismo. Para ver si hay errores de integración es necesario realizar otro tipo de pruebas de software conjuntas y de esta manera comprobar la efectividad total del código.

Related Posts

Leave a Reply!

You must be logged in to post a comment.