La importancia de probar tu código.

La importancia de probar tu código.

Recordando los días de cuando era estudiante, yo era uno de esos tantos desarrolladores que no realizaban unit tests o simplemente no lo creía necesario (tal vez pecando de vanidad, pensando que lo que desarrollaba no necesitaba ser probado), es decir, solo escribía el código necesario para el correcto funcionamiento de mis proyectos, nunca pasó por mi cabeza el escribir código que validara el código que escribía o que en un futuro pudiera llegar a escribir. Hoy me doy cuenta que no podía estar más equivocado, afortunadamente con el paso de los días y con la ayuda de buenos compañeros de trabajo y excelentes desarrolladores me di cuenta de la importancia de realizar unit tests. Gracias a eso hoy te encuentras leyendo estas palabras y por eso mismo me gustaría que mi experiencia te fuera de ayuda ya sea si aún eres una persona formándose en el ámbito de la programación o si ya tienes experiencia desarrollando pero aún no realizas pruebas  a tu código, recuerda que nunca es demasiado tarde para agregar este valioso habito a tus “artes ninja como desarrollador”.

unit_testing

Que son los Unit tests

Básicamente un unit test es una forma de garantizar el correcto funcionamiento de los diferentes módulos que conforman a tu código, de esta forma aseguras que cada uno de los módulos funcione de forma correcta ya sea que añadas nueva funcionalidad o elimines funcionalidad ya existente.

Porque molestarme en escribir pruebas unitarias.

  • Imagina que eres  desarrollador de una tienda en línea, y se te pide agregues un nuevo módulo para consultar la lista de artículos en base al rango de precios que ingrese el usuario. Tiempo después un nuevo desarrollador hace uso de tu modulo además de agregar/modificar lo que le fue pedido, acción que crea un defecto en el sistema. Teniendo unit tests podemos garantizar que todas las entradas producen las salidas deseadas y en caso de que no sea así podremos saber en que módulo se encuentra el defecto.
  • En realidad ahorra tiempo. Al principio escribir pruebas consumirá parte considerable de tu tiempo pero una vez lo hagas parte del día a día de tu vida como desarrollador te ahorrará gran cantidad de tiempo el cual lo podrás dedicar a escribir cosas geniales (¡seamos honestos! es lo que desea todo desarrollador) en lugar de leer y analizar código para encontrar defectos.
  • Te hace un mejor desarrollador. Grandes empresas y startups siempre están buscando a los mejores desarrolladores, el hacer pruebas al código que escribes te dará una gran ventaja y sumará valor a tu perfil ante los ojos de los reclutadores que se encuentran al acecho :D.
  • Hace a tu software confiable y robusto. Si eres un emprendedor que desea llevar su producto un paso más adelante, ya sea buscando inversión o con el objetivo de aumentar tu número de usuarios. Un código probado hablará bien de tu producto y aumentará la seguridad de tus inversionistas y usuarios.
  • Harás la vida de QA (Software quality assurance) mucho más sencilla. De Esta forma el departamento de QA puede enfocarse en probar las nuevas funciones sin tener que preocuparse tanto por si un defecto fue introducido, esto no quiere decir que QA tiene que olvidarse de todos los posibles escenarios que pueden fallar, solo que con las pruebas, gran parte de los escenarios habrán sido cubiertos.
  • Funcionan como documentación. Muestran como los diferentes módulos se comunican entre si, así como las entradas que son válidas y las salidas que son esperadas en los diferentes módulos. De esta forma si deseas usar una función escrita por alguien más, analizando las pruebas puedes darte cuenta que parámetros tienes que enviar y que resultado obtendrás.

Tips para crear unit tests

  • Un unit test solo prueba una y solo una parte de tu código. Unit tests pequeños y enfocados a una sola parte de tu código son legibles y fáciles de implementar a diferencia de aquellos que prueban varias partes de tu código.
  • No realices pruebas para partes de tu código que ya fueron probadas, es decir, si usas alguna librería de terceros en tu código
  • Escribe tu prueba antes de escribir el código que será probado, de esta forma tendrás un panorama más claro de que es lo que tu código tiene que hacer, a que entradas tiene que responder, cual es el resultado que producirá y cuales son los posibles errores que podrían ocurrir.
  • Considera usar una herramienta de code coverage para saber que tanto de tu código ha sido probado, existen muchas opciones para los lenguajes de programación más populares.
  • Hazlo un habito, práctica lo más que puedas no hay una serie de pasos establecidos para escribir buenas pruebas. Solo te harás mejor conforme lo practiques, entre más pruebas escribas la calidad de tus pruebas será mejor.

Written by Javier Sanchez

Web and Mobile developer, experiencia desarrollando en python, Django, android y a veces codea un poco de front end. Además de programar le gusta las películas de ciencia ficción y jugar basketball. LinkedIn: javiersanchez05, Twitter: javierSV05

Deja un comentario

A %d blogueros les gusta esto: