Cintillo Institucional

Pruebas

Una prueba unitaria[1] es una forma de probar el correcto funcionamiento de un módulo de código. Esto sirve para asegurar que cada uno de los módulos funcione correctamente por separado. Luego, con las Pruebas de Integración[2], se podrá asegurar el correcto funcionamiento del sistema o subsistema en cuestión.

Las pruebas de software son usadas para identificar posibles fallos, una herramienta para ejecutar pruebas es aquella que verifica los resultados que arroja un código en cierto lenguaje, para la primera versión de la plataforma se tomará como lenguaje C/C++.

Las ventajas de usar este tipo de pruebas son muchas, entre ellas están[3]:

1.Los errores son más fáciles de localizar.

2.Los errores están más acotados.

3.Se reducen los “efectos secundarios".

4.Se da más seguridad al programador.

5.Los errores se detectan antes que de otra forma

6.Las pruebas funcionales se hacen más sencillas

7.El programador escribe código de una forma más lógica.

8.Cada prueba se convierte en un ejemplo de uso.

Una de las consideraciones a tener en cuenta, al evaluar frameworks para realizar pruebas unitarias en C, es la desventaja que tiene este lenguaje para la gestión del espacio de nombres[15] [16].

Framework

Setup / teardown

Licencia

Xunit

Dependencias

Excepciones

Emulación Espacio de nombres

Comienzo del Proyecto

Check [4]

Si

LGPL

Si

POSIX (Linux/BSD/UNIX-like OSes)

Si

Si

29-02-2001

Cunit [11]

Si

LGPL

Si

Glib (librería Gnome

Si

No

06-08-2001

Rcunit [6]

Si

GPL

Si

No

Si

No

21-09-2006

Cppunit [8]

Si

LGPL

Si

Compilador y pruebas en C++

No

28-03-2003

Orden de Selección:

1- Check [4] Es un framework maduro. Las pruebas corren en espacio de nombres separados, y puede verificar a la vez fallo de aserciones y error de código[5]. Presenta una interfaz fácil de usar para realizar las pruebas[5]. Depende de POSIX por lo que solo puede ser implementado en Linux/BSD/UNIX.

2- Rcunit [6] Es un robusto framework que solo necesita el compilador estandar C. Lamentablemente no maneja la emulación de nombres de Check.

PRUEBAS UNITARIAS EN C++ [14]

Framework

Setup / teardown

Licencia

Xunit

Dependencias

Excepciones

Comienzo del Proyecto

CppUnit [4]

Si

LGPL

Si

No

Si

28-03-2003

Boost Test [12]

No

Boost Software License

No

No

Si

-

CppUnitLite [13]

Si

Sin informacion

Si

POSIX

No

-

CxxTest [10]

Si

LGPL

Si

No

Opcional

04-05-2002

Orden de Selección:

1- CppUnit[8]: Representa el framework más completo, maduro, solido y más usado para realizar pruebas unitarias en C++ [9].

2- Otra posible opción es CxxTest[10] la cual se destaca por la fácil inclusión de nuevos patrones de prueba[9].

pdslp (última edición 2008-07-21 14:16:41 efectuada por eparedes)