⇤ ← Versión 1 con fecha 2008-07-21 14:16:07
3106
Comentario:
|
← Versión 2 con fecha 2008-07-21 14:16:41 ⇥
3018
|
Los textos eliminados se marcan así. | Los textos añadidos se marcan así. |
Línea 1: | Línea 1: |
'''Pruebas''' |
=== Pruebas === |
Línea 10: | Línea 7: |
Línea 21: | Línea 16: |
5.Los errores se detectan antes que de otra forma | 5.Los errores se detectan antes que de otra forma |
Línea 29: | Línea 24: |
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 || |
|
Línea 30: | Línea 31: |
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|| |
|
Línea 45: | Línea 36: |
Línea 51: | Línea 40: |
'''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 || |
|
Línea 52: | Línea 47: |
'''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 || |
|
Línea 71: | Línea 52: |
1- CppUnit[8]: Representa el framework más completo, maduro, solido y más usado para realizar pruebas unitarias en C++ [9]. |
1- CppUnit[8]: Representa el framework más completo, maduro, solido y más usado para realizar pruebas unitarias en C++ [9]. |
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].