You are on page 1of 11

Pruebas Orientadas

a Objetos

Rino Tovar A.
Marzo, 2010
Recordando la POO

• Objetivo de las pruebas OO.

• La POO, promueve la “reutilización”,


pero no reduce la necesidad de
pruebas...las aumenta.
La visión de las pruebas
• Las pruebas son tan importantes
como la planificación.

• El tiempo que se gaste realizando


pruebas, se ganará en un futuro.

• Si los fallos no se detectan en la fase


de análisis se propagarán.
Pruebas de los Modelos AOO
y DOO

Los modelos de análisis y diseño no
pueden probarse en el sentido
convencional, ya que no pueden
ejecutarse.
• Para esto se usan técnicas formales
de garantía de calidad del software,
en donde se juzga el modelo
diseñado con el problema del mundo
real.
Consistencia de los modelos
AOO y DOO
Tarjeta CRC
Estrategias de Pruebas
Orientadas a Objetos
• En aplicaciones convencionales, las
pruebas de unidad se centran en las
unidades de programa compilables más
pequeñas.
• En el contexto OO, se conducen las pruebas
mediante las clases y jerarquía de clases.
• Se prueba una operación a la vez dentro de
cada contexto.
1 Pruebas Unitarias

2 Pruebas de Integración
Casos de prueba para
software OO
• Cada caso de prueba debe ser identificado
separadamente, y explícitamente asociado
con la clase a probar.

• Debe declararse el propósito de la prueba.

• Debe desarrollarse una lista de pasos a


seguir.
Pruebas basadas en errores
• El objetivo de las pruebas basadas en errores
dentro de un sistema OO,es diseñar pruebas
que tengan una alta probabilidad de revelar
fallos.
• El probador busca fallos posibles. Para
determinar si existen estos fallos, los casos
de prueba se diseñan para probar el código.
Ejemplo:

If (x > 0) calcular_raiz_cadrada(); // INCORRECTO

If (x >= 0) calcular_raiz_cadrada(); // CORRECTO


Pruebas basadas en el
escenario
• Las pruebas basadas en el escenario, se
concentran en lo que el usuario hace, no en
lo que el producto hace.
• Para esto se capturan las tareas por medio
de los casos de uso.
• Los escenarios revelan errores de interacción
y errores entre subsistemas de la aplicación.
Métodos de prueba a nivel de
clases

• La verificación al azar para las


clases OO.

• Pruebas de partición al nivel de


clases.
Pruebas Interclase
• Se verifican las colaboraciones entre
clases.

• También se usan los métodos de


partición y al azar.

You might also like