1. PRUEBAS Y DEPURACIÓN DE COÓDIGO
K. Espinel, C Fernández, R Martínez, A Velasteguí
Resumen- Una vez que se ha obtenido el programa incongruentes y observando cómo reacciona en cada
ejecutable, este es sometido a prueba a fin de ocasión. El proceso de depuración consiste en localizar
determinar si resuelve o no el problema planteado en los errores y corregirlos en caso de que estos existan. Si
forma satisfactoria. Las pruebas que se le aplican son de no existen, puede entenderse como una etapa de
diversa índole y generalmente dependen del tipo de refinamiento en la que se ajustan detalles para optimizar
problema que se está resolviendo. Se inicia la prueba de el desempeño del programa. Siendo este proceso de
un programa introduciendo datos válidos, inválidos e gran importancia para el programador
Cobertura de
Caja negra
requisitos
Palabras clave- Caja blanca, Caja negra, Cobertura de
Pruebas segmento
Depuración, JUnit, Logger. unitarias
Cobertura de
Pruebas de ramas
Integración
I. INTRODUCCIÓN software Caja blanca
Cobertura de
condición
Aceptación /decisión
Para un programador es importante que al
Cobertura de
finalizar su programa este tenga un correcto bucles
funcionamiento para el cual fue creador, pero
además es importante que el programa sea óptimo Fig.1. Pruebas de Sofware
y se ejecute de la mejor manera posible, por esto
es importante la utilización de las pruebas y
depuración de código para lograr que el programa Pruebas Unitarias:
se ejecute de una forma correcta, ya que no
siempre que un programa no presente errores es Las pruebas unitarias son pruebas dirigidas a
significado que realiza lo que deseamos. Por lo probar clases java aisladamente y están
cual la importancia de llegar a tener un buen relacionadas con el código y la responsabilidad de
manejo y conocimiento de los diferentes métodos cada clase y sus fragmentos de código más
para realizar una prueba y depuración de código críticos
de un programa, pudiendo corregir de manera más
Características y ventajas de las pruebas
precisa los errores q este presente.
unitarias
II. PRUEBAS Y DEPURACIÓN DE Automatizable • Fomentan el cambio
CODIGO
Completas • Simplifican la integración
Al finalizar un programa el paso a seguir es la
Reutilizables • Documentan el código
realización de pruebas de código para la detección
de los errores del mismo. Independientes • Separa la interfaz y la implementación
Las pruebas de software son de vital Profesionales • Los errores son más sencillos de localizar
importancia, garantizando la calidad de nuestros
programas. Fig.2. Características y ventajas de las pruebas unitarias
2. Pruebas de Caja Blanca Looger (LOG4J)
Son pruebas estructurales ya que su objetivo es Es una Biblioteca open source desarrollada en
probar exhaustivamente la estructura del código. java por Apache Sofware Foundation y permite
elegir la salida y nivel de granularidad de los
Cobertura: Es un porcentaje de código que se ha mensajes (logs) al momento de ejecutar y no al de
sido probado (cubierto) compilar
Los mensajes son
Es una secuencia de sentencias sin Appenders enviados a una (o varias)
Cobertura de puntos de decisión. Se ejecutan todas salida(s) de destino
segmentos las sentencias o todos los segmentos.
Da un formato de
Layouts presentación a los
Permite tener una mayor mensajes
cobertura que la de
segmentos, ya que prueba
Cobertura de ramas
todos los posibles casos
Pruebas de dentro de sentencias
caja blanca condicionales Fig.5. Appenders, Layout
Cobertura de Prueba casos condicionales
condición/desición complejos (cobertura sobre las
combinaciones)
Log4j cuenta con 6 niveles de prioridad de mayor
a menor
Cobertura de bucles Cubre las sentencias
repetivas(bucles)
OFF Deshabilita todos los logs
FATAL Mensajes críticos del sistema
Fig.3. Pruebas de Caja Blanca ERROR Mensaje de error en la aplicación que se desea guardar
WARN Mensajes de alerta sobre eventos que se desea mantener
constancia
INFO Mensajes similares al modo “verbose” en otras
aplicaciones
Pruebas de Caja Negra DEBUG Mensajes de depuración. Este nivel no debe estar
activado cuando la aplicación se encuentre en
producción.
Las pruebas de caja negra son pruebas funcionales TRACE Mensajes con mayor nivel de detalle que debug.
o de caja opaca, ayuda al programador a ALL Habilita todos los logs (equivale a TRACE)
identificar si el programa cumple con las Tabla. 1. Niveles de prioridad
especificaciones. Para ellos se hacen pruebas de
cobertura en interno con interfaces externos
JUnit
JUnit es un Framework nos ayuda a ver si los
cambios en un módulo afectan a otros, evita las
pruebas de funcionalidad a mano ya que las
realiza automáticamente realizando pruebas
internas y externas por integración.
Fig.4. Pasos para las pruebas de caja blanca
3. con el objetivo específico del programa, aunque
no se puede asegurar al 100% el desempeño del
programa, ya que pueden existir factores no
pronosticados.
Las pruebas y la depuración de código no
garantizan la calidad de éste, ya que las pruebas
demuestran la eficacia mas no garantizan que el
código del programa sea adecuado.
Las pruebas de caja blanca permiten realizar
una revisión del programa, con una gran
cobertura, se ejecuta un control sobre todo el
código que interviene en el programa, utilizando
las diferentes coberturas de las cuales consta esta
prueba.
El JUnit es una herramienta para verificar
errores en los programas realizados ya que
compara el resultado deseado con el obtenido,
Fig.6. Características del JUnit para su comprobación se puede cambiar el código
principal en algo y nos mostrara el mensaje del
CVS error. Permiten al programador evaluar si el
programa está respondiendo al propósito para el
que fue creado, cumpliendo con todos los
objetivos y funcionando de manera correcta en
cada uno de sus módulos.
Autores:
Karla Verónica Espinel Rivera nació en
Quito, Ecuador el 26 de mayo de 1991.
Realizó sus estudios de educación primaria
y secundaria en la Unidad Educativa “La
Providencia” de la ciudad de Quito,
graduándose en el 2008-2009 con el título
de Bachiller en la especialidad de físico-
matemático. Actualmente se encuentra cursando sus estudios
superiores en la Escuela Politécnica del Ejército en la facultad
de electrónica.
Fig.7. CVS
III. CONCLUSIONES
Claudia Betzabeth Fernández Jiménez
nació en Loja, Ecuador el 16 de febrero de
La realización e investigación de estas pruebas
1991. Realizó sus estudios de educación
de software permite asegurar el funcionamiento de primaria en la Unidad Educativa “Simón
un programa antes de su presentación o Bolívar” y la Unidad Educativa “San José
distribución para que de esa forma el programa de Calasanz” de la ciudad de Loja.
Realizó sus estudios de educación
desarrollado se encuentre totalmente bien
secundaria en el Instituto Superior
estructurado, de esa manera se está cumpliendo
4. Tecnológico “Daniel Álvarez Burneo” graduándose en el 2008 [3] The Eclipse Foundation (2011). CVS.
con el título de Bachiller en la especialidad de físico- http://www.eclipse.org/eclipse/platform-cvs/#ABOUT.
matemático. Actualmente se encuentra cursando sus estudios Extraído el 12 de octubre del 2011.Rodriguez Jorge
superiores en la Escuela Politécnica del Ejército en la facultad (2006).
de electrónica. [4] Rodriguez Jorge (2006) Pruebas Unitarias
http://blog.continuum.cl/wp-
Alexis Ademar Velasteguí Sigcha nació content/uploads/2008/08/pruebas-unitarias.pdf . Extraído
en Quito, Ecuador el 24 de enero de 1992. el 14 de octubre del 2011.
Realizó sus estudios de educación primaria [5] Graversen Kasper (2006). CVS.
en la Colegio Francés de Quito. Realizó sus http://supercsv.sourceforge.net/csvSpecification.html
estudios de educación secundaria en el Extraído el 12 de octubre del 2011.
ColegioTécnico Experimental Salesiano [6] Mañas José A. (1994). Prueba de programas.
“Don Bosco” graduándose en el 2009 con www.lab.dit.upm.es/~lprg/material/apuntes/pruebas/testi
el título de Bachiller en la especialidad de ng.htm#s1. Extraído el 14 de octubre del 2011
Electricidad y Electrónica. Actualmente se [7] Villena Julio, Férnandez Carmen (2001). Pruebas de
encuentra cursando sus estudios superiores en la Escuela programashttp://www.it.uc3m.es/ttrd/material/05-
Politécnica del Ejército en la facultad de Electrónica. pruebas-de-programas.pdf. Extraído el 14 de octubre de
2011
Ronie Stalin Martínez Gordón nació en
Quito, Ecuador el 1 de Enero de 1993.
Cursó sus estudios primarios en el
Colegio Miguel Ángel Asturias en
Calderón. Realizó sus estudios de
educación secundaria en el Colegio San
Gabriel promoción 2009 con título de Bachiller en especialidad
Físico Matemático. Actualmente cursa sus estudios de
educación superior en la Escuela Superior Politécnica del
Ejercito (ESPE) en la facultad de Electrónica.
[1] Soto Lauro (2010). Pruebas y
Depuraciónhttp://www.mitecnologico.com/Main/Pruebas
YDepuracion. Extraído el 14 de octubre de 2011.
[2] Linux GarZa (2002) Manual de CVS.
http://mygnet.net/manuales/java/cvs_concurrent_versioni
ng_system.1974. Extraído el 13 de octubre del 2011.