Con la ayuda de unit test, en español pruebas unitarias, es posible comprobar los co­m­po­ne­n­tes in­di­vi­dua­les de los programas in­fo­r­má­ti­cos. Estos test permiten examinar el correcto fu­n­cio­na­mie­n­to de cada uno de los elementos antes de que ocupen su lugar en el concepto general de un programa. Además, ayudan a comprobar de forma re­la­ti­va­me­n­te rápida y fácil si el co­m­po­ne­n­te funciona según lo previsto por el de­sa­rro­lla­dor. Los test unitarios son una de las formas más eficaces para descubrir la mayor cantidad posible de errores del código en las fases tempranas de de­sa­rro­llo del software

El unit testing juega un papel fu­n­da­me­n­tal en el control de calidad de cualquier programa. En especial en el ágil de­sa­rro­llo de software se apuesta cada vez más por este método. Por lo general, las pruebas unitarias tienen como objetivo la co­m­pro­ba­ción frecuente de diversos co­m­po­ne­n­tes, es por esto que se realizan de forma au­to­má­ti­ca. Así, con solo presionar un botón, los re­s­pe­c­ti­vos programas realizan varias pruebas unitarias al azar. Es común que el programa de prueba utilizado esté escrito en el mismo lenguaje del objeto de prueba. 

¿Para qué se utilizan las pruebas unitarias?

El término unit test proviene del inglés y se refiere al método de co­m­pro­ba­ción de las “unidades” (en inglés unit) más pequeñas del software. Los co­m­po­ne­n­tes más pequeños que pueden probarse y cuyos re­su­l­ta­dos con más si­g­ni­fi­ca­ti­vos son los módulos. Es re­co­me­n­da­ble co­m­pro­bar­los en las primeras fases de de­sa­rro­llo, pues en la fase de prueba, el módulo aún se puede corregir de forma re­la­ti­va­me­n­te rápida y poco costosa. En fases po­s­te­rio­res, estos procesos están asociados a mayores gastos. Las pruebas unitarias se ocupan pri­n­ci­pa­l­me­n­te de las fu­n­cio­na­li­da­des técnicas. Por lo general, el de­sa­rro­lla­dor es quien ejecuta las pruebas y se encarga de corregir errores y asegurar la correcta fu­n­cio­na­li­dad de los co­m­po­ne­n­tes.

El entorno de prueba de los test unitarios

La prueba se realiza en el llamado entorno autónomo. El reto está entonces en la creación de dicho entorno, algo que puede resultar complejo y requiere mucho tiempo en caso de querer im­ple­me­n­tar­lo ma­nua­l­me­n­te. Debido a que los módulos se ejecutan de manera in­de­pe­n­die­n­te, es necesario utilizar el llamado arnés de pruebas (en inglés test harness). Este script de pruebas permite que el objeto del test se convierta en un programa eje­cu­ta­ble. Para crear un entorno de prueba realista, se utilizan su­s­ti­tu­tos de código (stubs) que sirven como ma­r­ca­do­res cuando el módulo requiere otros co­m­po­ne­n­tes para in­ter­ac­tuar.

Fra­me­wo­r­ks de prueba para el unit testing

El objetivo de los tests unitarios es detectar errores dentro de los co­m­po­ne­n­tes in­di­vi­dua­les. Si la idea es ga­ra­n­ti­zar la exactitud del código durante todo el proceso de de­sa­rro­llo, es necesario llevar a cabo pruebas unitarias co­n­s­ta­n­te­me­n­te. Es por esto que aquí, au­to­ma­ti­za­ción es una palabra clave. Existen fra­me­wo­r­ks de prueba de software es­pe­cia­les para la ejecución de unit tests. Casi todos los lenguajes de pro­gra­ma­ción cuentan con un software de pruebas unitarias apropiado. Este se encarga de leer el código fuente y comprobar si hay errores. Las he­rra­mie­n­tas se encargan de fijar au­to­má­ti­ca­me­n­te el entorno an­te­rio­r­me­n­te me­n­cio­na­do. El de­sa­rro­lla­dor se concentra en definir los casos de prueba. En este enlace en­co­n­tra­rás una lista detallada de los fra­me­wo­r­ks de prueba di­s­po­ni­bles para cada uno de los lenguajes de pro­gra­ma­ción di­s­po­ni­bles.

Ir al menú principal