Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema V
Tema V
1.13.4
Prueba de sistemas de tiempo-real..........................................................15
2
Pruebas orientadas a objetos................................................................................16
2.1
Ampliando la visin de las pruebas.................................................................16
2.2
Pruebas de los Modelos de AOO y DOO........................................................16
2.2.1
Exactitud de los modelos AOO y DOO...................................................16
2.2.2
Consistencia de los modelos AOO y DOO..............................................16
2.3
Estrategias de Prueba Orientadas a Objetos....................................................17
2.3.1
Las pruebas de unidad en el contexto de la OO......................................17
2.3.2
Las pruebas de integracin en el contexto OO........................................17
2.3.3
Pruebas de validacin en un contexto OO...............................................17
2.4
Diseo de Casos de Prueba para software OO................................................17
2.4.1
Implicaciones de los conceptos de OO al diseo de casos de prueba.....18
2.4.2
Aplicabilidad de los mtodos convencionales de diseo de casos de
prueba 18
2.4.3
Pruebas basadas en errores......................................................................18
2.4.4
El impacto de la programacin OO en las pruebas.................................18
2.4.5
Casos de prueba y jerarqua de clases.....................................................18
2.4.6
Diseo de pruebas basadas en el escenario.............................................18
2.4.7
Las estructuras de pruebas superficiales y profundas..............................19
2.5
Mtodos de Prueba aplicables a nivel de Clases.............................................19
2.5.1
La verificacin al azar para clases OO....................................................19
2.5.2
Prueba de particin al nivel de clases......................................................19
2.6
Diseo de Casos de prueba Interclase.............................................................19
2.6.1
Prueba de mltiples clases.......................................................................19
2.6.2
Prueba derivada de los modelos de comportamiento..............................20
3
Pruebas de entornos especializados.....................................................................20
4
Patrones de prueba...............................................................................................20
5
Documentacin de pruebas..................................................................................20
5.1
Plan de pruebas..............................................................................................20
1.1
1.2
Aspectos estratgicos
1.3
Prueba de unidad
1.4
Prueba de integracin
1.5
Prueba de validacin
La validacin puede definirse de muchas formas, pero una simple definicin es que
la validacin se consigue cuando el software funciona de acuerdo con las
expectativas razonables del cliente, las cuales estn definidas en la Especificacin
de Requisitos del Software.
1.6
acceder al sistema, el objetivo es hacer que el coste de la entrada ilegal sea mayor
que el valor de la informacin contenida.
1.7
El ingeniero crea una seria de casos de prueba que intentan "demoler" el software
construido. De hecho, las pruebas son uno de los pasos de la ingeniera del
software que se puede ver como destructivo en lugar de constructivo.
A todas las pruebas se les debera poder hacer un seguimiento hasta los
requisitos del cliente
Las pruebas deberan planificarse mucho antes de que empiecen
El principio de Pareto es aplicable a la prueba del software
Las pruebas deberan empezar por lo "pequeo" y progresar hacia lo
"grande".
No son posibles las pruebas exhaustivas
Para ser eficaces, las pruebas deberan ser realizadas por un equipo
independiente
1.8
1.9
1.10.1
Cada crculo, denominado nodo del grafo de flujo, representa una o mas sentencias
procedimentales.
Las flechas del grafo de flujo, denominadas aristas enlaces, representan flujo de
control y son anlogas a las flechas del diagrama de flujo.
Las reas delimitadas por aristas y nodos se denominan regiones. Cuando
contabilizamos las regiones incluimos el rea exterior del grafo, contando como otra
regin ms.
Cada nodo que contiene una condicin se denomina nodo predicado y est
caracterizado porque dos o ms aristas emergen de l.
1.10.2
Complejidad ciclomtica
1.10.3
1.10.4
Matrices de grafos
Una matriz de grafo es una matriz cuadrada cuyo tamao es igual al nmero de
nodos del grafo de flujo. Cada fila y cada columna corresponde a un nodo especfico
y las entradas de la matriz corresponden a las conexiones entre los nodos.
Aadiendo un peso al enlace a cada entrada de la matriz, la matriz de grafo se
puede convertir en una potente herramienta para la evaluacin de la estructura de
control de programa durante la prueba. En su forma ms sencilla, el peso de enlace
es 1 0. Otras propiedades ms interesantes:
La probabilidad de que un enlace sea ejecutado
El tiempo de procesamiento asociado al recorrido de un enlace
La memoria requerida durante el recorrido de un enlace
Los recursos requeridos durante el recorrido de un enlace.
1.11.1Prueba de condicin
La prueba de condicin es un mtodo de diseo de casos de prueba que ejercita las
condiciones lgicas contenidas en el mdulo de un programa.
A una condicin sin expresiones relacionadas se al denomina Expresin lgica.
Si una condicin es incorrecta, entonces es incorrecto al menos un componente de
la condicin. As, los tipos de errores de una condicin pueden ser los siguientes:
Error en operador lgico
Error en parntesis lgico
Error en operador relacional
Error en expresin aritmtica
El mtodo de la prueba de condiciones se centra en la prueba de cada una de las
condiciones del programa. Las estrategias de prueba de condiciones tienen,
generalmente, dos ventajas:
1. La cobertura de la prueba de una condicin es sencilla
2. La cobertura de la prueba de las condiciones de un programa da una
orientacin para generar pruebas adicionales del programa
Estrategias de prueba de condiciones:
1. La prueba de ramificaciones
2. La prueba del dominio
3. BRO (prueba del operador relacional y de ramificaciones): garantiza la
deteccin de errores de operadores relacionales y de ramificaciones en una
condicin dada, en la que todas las variables lgicas y operadores
relacionales de la condicin aparecen slo una vez y no tienen variables en
comn.
1.11.3Prueba de bucles
La prueba de bucles es una tcnica de prueba de caja blanca que se centra
exclusivamente en la validez de las construcciones de bucles:
Bucles simples
Bucles concatenados
Bucles anidados
Bucles no estructurados
Bucles simples : a los bucles simples se les debe aplicar el siguiente conjunto de
pruebas, donde n es el nmero mximo de pasos permitidos por el bucle:
1. pasar por alto totalmente el bucle
2. pasar una sola vez por el bucle
3. pasar 2 veces por el bucle
4. hacer m pasos por el bucle con m < n
5. hacer n - 1 , n y n + 1 pasos por el bucle
Bucles anidados:
1. Comenzar por el bucle ms interior. Establecer o configurar los dems
bucles con sus valores mnimos.
2. Llevar a cabo las pruebas de bucles simples para el bucle ms interior,
mientras se mantienen los parmetros de iteracin de los bucles externos en
sus valores mnimos. Aadir otras pruebas para valores fuera de rango o
excluidos.
3. Progresar hacia fuera, llevando a cabo pruebas para el siguiente bucle, pero
manteniendo todos los bucles externos en sus valores mnimos y los dems
bucles anidados en sus valores "tpicos"
4. Continuar hasta que se hayan probado todos los bucles
Bucles concatenados : Los bucles concatenados se pueden probar mediante el
enfoque anteriormente definido para bucles simples.
Bucles no estructurados: se deben redisear para que se ajusten a las
construcciones de programacin estructurada.
1.12.1
Las pruebas basadas en grafos empiezan con la definicin de todos los nodos y
peso de nodos.
Una vez que se han identificado los nodos, se deberan establecer los enlaces y los
pesos de enlaces.
Cada relacin es estudiada separadamente, de manera que se puedan obtener
casos de prueba.
1.12.2
Particin equivalente
1.12.3
1.12.4
Prueba de comparacin
Hay situaciones en las que la fiabilidad del software es algo absolutamente crtico.
En este tipo de aplicaciones, a menudo se utiliza hardware y software redundante
para minimizar la posibilidad de error.
Cuando se han producido mltiples implementaciones de la misma especificacin, a
cada versin del software se le proporciona como entrada los casos de prueba
diseados mediante alguna otra tcnica de caja negra.
1.12.5
Los grafos de modelado de estado finito pueden ser utilizados para realizar pruebas
que vayan dirigidas sobre datos especficos y programas objeto que sean relevantes
para las IGUs.
1.13.2
1.13.3
Los errores en la documentacin pueden ser tan destructivos para la aceptacin del
programa, como los errores en los datos o en el cdigo fuente
1.13.4
Estrategia de 4 pasos:
1. Prueba de tareas : el primer paso de la prueba de sistemas de tiempo real
consiste en probar cada tarea independientemente.
2. Pruebas de comportamiento : utilizando modelos del sistema creados con
herramientas CASE, es posible simular el comportamiento del sistema en
tiempo real y examinar su comportamiento como consecuencia de sucesos
externos.
3. Prueba intertareas : una vez que se han aislado los errores en las tareas
individuales y en el comportamiento del sistema, la prueba se dirige hacia
los errores relativos al tiempo.
4. Prueba del sistema : el software y el hardware estn integrados, por lo que
se lleva a cabo una serie de pruebas completas del sistema para intentar
descubrir errores en la interfaz software / hardware.
2
2.1
2.2
2.3
2.4
sencilla.
2.5
La prueba "en pequeo", se enfoca en una sola clase y los mtodos encapsulados
por ella. La verificacin y particin al azar son mtodos que pueden usarse para
ejercitar a una clase durante la prueba OO.
2.6
El DTE (diagrama de transicin de estados) para una clase puede usarse para
ayudar a derivar una secuencia de pruebas, que ejercitarn el comportamiento
dinmico de la clase.
Las pruebas a disearse deben alcanzar una cobertura de todos los estados.
El modelo de estados puede ser recorrido "primero a lo ancho". En este contexto,
primero a lo ancho implica que un caso de prueba valida una sola transicin y
despus, cuando se va a verificar una nueva transicin, se utilizan slo las
transiciones previamente verificadas.
Patrones de prueba.
Documentacin de pruebas.
Como en toda fase, todos los elementos preparados para las pruebas y los
resultados de las mismas deben ser documentados y adjuntados a cada versin
correspondiente de los productos de las fases anteriores. Esta forma de proceder
evitar la repeticin de pruebas y facilitar la preparacin de nuevas pruebas a
partir de otras anteriores.
5.1
Plan de pruebas
Identificador del plan: debera ser una palabra que lo identificase con su
alcance. Debe incluir adems la versin y fecha.
Alcance: tipo de prueba y propiedades del software a ser probado.
Items a probar: configuracin a probar y condiciones que se deben satisfacer
para ello.
Estrategia: tcnica y herramientas que se van a utilizar. Hay que indicar el
nmero mnimo de casos de prueba que se van a realizar y el grado de
automatizacin tanto en la generacin de casos de prueba como en la
ejecucin
Categorizacin de la configuracin: condiciones bajo las cuales el plan debe
ser: