tema 4: pruebas - conceptos - grupo de investigacióncs... · prueba del software enfoque aleatorio...
Post on 02-Oct-2018
222 Views
Preview:
TRANSCRIPT
Tema 4: Pruebas - Conceptos
Departamento de Lenguajes y Sistemas Informáticos II
www.kybele.urjc.es
Titulo de la Presentación www.kybele.urjc.es
Índice
Conceptos previos.
Prueba del software.
Enfoque caja blanca.
Enfoque caja negra.
Conjetura de errores.
Enfoque aleatorio.
Documentación.
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Conceptos previos Verificación y Validación
¿Qué significa verificar el software?
Determinar si los productos de una fase dada satisfacen las condiciones impuestas al inicio de la fase.
¿Qué significa validar el software?
Evaluar un sistema o uno de sus componentes, durante o al final de su desarrollo, para determinar si satisface los requisitos.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Conceptos previos
Enfoque aleatorio
Prueba del software
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Conceptos previos Defecto/fallo/error
¿Qué es un defecto en el software?
Una definición de datos incorrecta.
Un paso de procesamiento incorrecto en el programa.
¿Qué es un fallo en el software?
Es la incapacidad de un sistema para realizar las funciones requeridas dentro de los requisitos de rendimiento especificados.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Conceptos previos
Enfoque aleatorio
Prueba del software
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Conceptos previos Defecto/fallo/error
¿Qué es un error en el software?
Un defecto.
Un resultado incorrecto.
Acción humana que lleva a un resultado incorrecto.
La diferencia entre un valor calculado y el verdadero.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Conceptos previos
Enfoque aleatorio
Prueba del software
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Conceptos previos Defecto/fallo/error
Un error del programador introduce un defecto y este defecto produce un fallo.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Conceptos previos
Enfoque aleatorio
Prueba del software
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Prueba del Software
¿Qué es la prueba del software?
Una actividad en la que un sistema, o uno de sus componentes, se ejecuta en circunstancias previamente planificadas. Los resultados se observan, se registran y se realiza una evaluación.
Es un elemento crítico para la garantía de calidad del software y representa una revisión final de las especificaciones, del diseño y de la codificación.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Prueba del Software
¿Qué es un caso de prueba?
Un conjunto de:
Entradas.
Condiciones de ejecución.
Resultados esperados.
Este conjunto se llama escenario.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Objetivos Proceso de ejecución de un programa con el
fin de descubrir un error, con poca cantidad de tiempo y esfuerzo.
Las pruebas permiten verificar y validar el software.
Buen caso de prueba Alta probabilidad de encontrar un error.
Éxito de una prueba Descubrir error no detectado con anterioridad.
Las pruebas no garantizan la ausencia de defectos.
Prueba del Software
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Principios
Planificación anterior a la realización (Plan de prueba).
Imposibilidad de hacer unas pruebas exhaustivas.
Empezar por lo pequeño y progresar a lo grande.
Gran efectividad Realización de pruebas por equipos independientes.
Se deben incluir tanto entradas correctas como incorrectas.
Las pruebas se deben documentar detalladamente.
Prueba del Software
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Prueba del Software Proceso
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Prueba del software Diseño de pruebas
Probar exhaustivamente un software es imposible. Necesitamos técnicas que nos ayuden a confeccionar casos de prueba que me aseguren una evaluación eficiente del software.
La mejor técnica es aquella que con menos casos de prueba me lo certifique.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Prueba del software Diseño de pruebas
4 enfoques para la construcción de casos de prueba:
Enfoque de caja blanca (Estructural).
Enfoque de caja negra (Funcional).
Conjetura de errores.
Enfoque aleatorio.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja blanca
Principios Ejercitar una vez todos los caminos. Ejercitar todas las decisiones (V/F). Ejercitar todos los bucles (límites). Ejercitar las estructuras de datos.
Para cumplir con los principios anteriores
disponemos de 2 pruebas:
Prueba del camino básico. Prueba de la estructura de control.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
.
Enfoque de caja blanca Prueba del camino básico
¿Qué es un camino?
Es por donde el flujo de ejecución debe pasar
Técnica de prueba de caja blanca que define un conjunto básico de caminos de ejecución
Se debe generar un caso de prueba para cada camino de ejecución.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
¿Cómo descubrir los caminos?
Mediante el diagrama de flujo.
Enfoque de caja blanca Prueba del camino básico
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja blanca Prueba del camino básico
¿Cómo construir un diagrama de flujo a partir del código?
1. Señalar todas las decisiones de las sentencias
1. If-then
2. Case-of,
3. While
4. Until.
2. Agrupar resto de sentencias.
3. Señalar los end if y end while.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Condición 1 Condición 3
Condición 2 Decisión
Enfoque de caja blanca Prueba del camino básico
Principios
If____or ____and_____then
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Secuencia
X
Si X entonces…
X
Hacer … hasta X
X
Mientras X, hacer …
Enfoque de caja blanca Prueba del camino básico
Principios
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
1
2,3
4,5
10 11
6
7 8
9 R1
R2
R3
R4
Nodo
Arista
Región
Enfoque de caja blanca Prueba del camino básico
Principios
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja blanca Prueba del camino básico
Complejidad ciclomática de McCabe:
Métrica del sw utilizada para determinar el número máximo de caminos independientes.
◦ Fórmula de las regiones: V(G)=A-N+2
◦ Fórmula de las decisiones: V(G)=C+1 (C nodos de decisión).
◦ Las Regiones: V(G)=R
A-N+2 = C+1 = R
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja blanca Prueba del camino básico
Procedimiento:
Dibujar el grafo de flujo.
Calcular la complejidad ciclomática.
Determinar el conjunto de caminos independientes.
Preparar el caso de prueba para cada camino.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja blanca Prueba de la estructura de control
P. camino básico P. estructura de
control.
Amplía la cobertura de la prueba.
Mejoran su calidad.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja blanca Prueba de la estructura de control
Grado de cobertura: por qué sentencias se debe pasar para considerar que se ha pasado la prueba.
Según la cobertura:
Prueba de sentencia.
Prueba de decisión.
Prueba de condición.
Prueba de decisión/condición.
Prueba de bucles.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja negra
Se utilizan particiones/clases de equivalencia. Ignora la estructura de control.
Se divide el dominio de los valores de entrada en diferentes clases/particiones.
Cada clase de equivalencia posee unos ciertos valores ->Estos valores dan resultados iguales ->Para realizar la prueba cogemos un único valor representante de cada clase.
2 métodos de pruebas de Caja negra:
◦ Partición en clases de equivalencia.
◦ Análisis de valores límite (AVL).
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja negra Partición en clases de equivalencia
Procedimiento
Identificar clases de equivalencia.
Crear los casos de prueba.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Identificar clases de equivalencia
De cada clase se deben obtener datos válidos y no válidos.
Enfoque de caja negra Partición en clases de equivalencia
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Reglas para la identificación de clases equivalencia
Rango: si se especifica un rango de valores para los datos de entrada se creará una clase válida y dos clases no válidas.
Ej: Alquiler para personas entre 18 y 80 años ◦ < 18 años
◦ > 80 años
Enfoque de caja negra Partición en clases de equivalencia
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Valor: si se especifica un valor se creará una clase válida y dos no válidas.
Ej: El nombre debe tener 10 caracteres
< 10 caracteres
> 10 caracteres
Enfoque de caja negra Partición en clases de equivalencia
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Lógico: si se especifica una situación del tipo booleano se identifica una clase válida y una no válida.
Si se sospecha que ciertos elementos de una clase no se tratan igual deben dividirse en clases menores.
Si se especifica un conjunto de valores y el programa los trata de diferente manera, se identifica una clase válida y otra no válida para cada valor.
Enfoque de caja negra Partición en clases de equivalencia
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Principios
Para cubrir todas las clases válidas se tratará de preparar casos de prueba que cubran el máximo nº de clases válidas no cubiertas.
Para cubrir todas las clases no válidas se preparará un caso de prueba para cada clase no válida sin cubrir.
Enfoque de caja negra Partición en clases de equivalencia
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja negra Análisis de valores límite
Es una técnica complementaria a la partición en clases de equivalencia.
Explora las condiciones límites de un programa. Se eligen valores en los márgenes de la clase.
No sólo se fija el dominio de entrada sino también el dominio de salida.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja negra Análisis de valores límite
Principios
1. Rango: Si una condición de entrada especifica un rango de valores, se deben generar casos válidos con los extremos del rango y casos no válidos para situaciones justo más allá de los extremos.
2. Valor: Si la condición de entrada especifica un valor se deben generar casos para el número máximo, mínimo, máximo+1 y mínimo-1.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de caja negra Análisis de valores límite
3. Usar la regla 1. para la condición de salida.
4. Usar la regla 2. para la condición de salida.
◦ Los valores límite de entrada no generan necesariamente los valores límite de salida.
◦ No siempre se pueden generar resultados fuera del rango de salida.
5. Si la entrada o la salida de un programa es un conjunto ordenado, los casos se deben concentrar en el primer y último caso.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Conjetura de errores
Enumerar una lista de errores comunes.
En función de ella elaborar los casos de prueba.
El valor 0 es una situación propensa a error, tanto en la salida como en la entrada
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque aleatorio
Se crean datos que sigan las frecuencia y la secuencia que tendrían en la práctica.
Se simula la entrada de datos
Se usan generadores de prueba.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Documentación
Prueba del software
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Plan de Pruebas
Especificación de diseño de
pruebas
Especificación de casos de
pruebas
Especificación de procedimientos
de pruebas
Ejecución
Informes
Documentación de la fase de pruebas
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Prueba del software
Documentación
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Especificación de diseño de
pruebas
Especificación de casos de
pruebas
Especificación de diseño de
pruebas
Documentación de la ejecución
¿Qué se obtiene en la ejecución?
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Prueba del software
Documentación
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Documentación Depuración
Es el proceso de localizar, analizar y corregir los defectos que se sospecha que contiene el software.
La depuración es síntoma de una prueba con éxito.
La localización de un defecto conlleva mayor esfuerzo que la corrección.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Prueba del software
Documentación
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Documentación Análisis de Errores
¿Qué se registra?
Cuándo se cometió.
Quién lo hizo.
Qué se hizo mal.
Cómo se podría haber prevenido.
Cómo se encontró el error.
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Prueba del software
Documentación
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Código
Prueba Unidad
Prueba integración
Prueba sistema
Prueba validación
Documentación Ciclo de vida de pruebas
Enfoque de caja blanca Enfoque de caja negra
Conjetura de errores
Prueba del software
Documentación
Enfoque aleatorio
Conceptos previos
Validación y verificación
Titulo de la Presentación www.kybele.urjc.es
Enfoque de las pruebas del sw
42
A
B
C D
E
A
B
C D
E
Proceso de Ingeniería
Pruebas del software
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es
Estrategias de prueba para arquitecturas convencionales
43
Prueba de Unidad
Prueba de Integración
Prueba de validación
Prueba del Sistema – TOTAL: personal, HW, otros sistemas, etc.
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 44
Estrategias de prueba para arquitecturas convencionales
Prueba de Unidad
Verificar el módulo o componente
Orientada a Caja Blanca
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 45
Prueba de Unidad
Interfaz
Estructuras de datos locales
Condiciones límite
Caminos independientes
Rutas de manejo de errores
Estrategias de prueba para arquitecturas convencionales
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 46
Prueba de Unidad - Consideraciones
Interfaz: fluidez de información desde y hacia la unidad de programa
Nº de argumentos = Nº parámetros
Orden correcto de los parámetros
Valores válidos de los argumentos
Estrategias de prueba para arquitecturas convencionales
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 47
Prueba de Unidad - Consideraciones
Estructuras de datos: Integridad de los datos durante la ejecución
Inicialización o valores erróneos
Tipos de datos inconsistentes
Desbordamiento
Estrategias de prueba para arquitecturas convencionales
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 48
Prueba de Unidad - Consideraciones
Condiciones límite: Asegurar el funcionamiento en las restricciones
Muy apropiados para descubrir todo tipo de errores
Estrategias de prueba para arquitecturas convencionales
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 49
Prueba de Unidad - Consideraciones
Caminos independientes: Asegurar la ejecución de todo (al menos una vez)
Cálculos incorrectos
Comparaciones incorrectas
Flujos de control inapropiados
Estrategias de prueba para arquitecturas convencionales
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 50
Prueba de Unidad - Consideraciones
Caminos de manejo de errores: asegura fin limpio al producirse un error
No implica “no realizar pruebas”
Descripción insuficiente del error
Primar intervención del manejo de error
Estrategias de prueba para arquitecturas convencionales
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 51
Procedimiento de prueba de unidad
Crear conductor (programa principal)
Crear resguardo (módulo subordinado)
Dependencia del módulo -> sobrecarga de trabajo
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es
Procedimiento de prueba de integración
52
Verificar la estructura del programa
Aumento de la interacción
Integración, nunca BIG BANG
Integración siempre incremental
Errores fáciles de asilar
Errores fáciles de corregir
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 53
Procedimiento de prueba de integración
Estrategias de integración incremental
Descendente
En profundidad
En anchura
1
2
3 4
5 6
1
2
5 6
3 4
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 54
Procedimiento de prueba de integración
Estrategias de integración incremental descendente
Pasos a seguir
Programa principal y resguardos (módulos subordinados inmediatos)
Ejecutar pruebas
Sustituir resguardo por módulo real y agregar resguardos a ese módulo
Ejecutar pruebas
Problema
Necesidad de un proceso inferior para la prueba de niveles superiores
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 55
Estrategias de integración incremental descendente
Soluciones
Retrasar la prueba (no determinación de errores)
Resguardos que simulen el proceso (exceso de esfuerzo)
Integrar desde abajo hacia arriba (integración ascendente)
Procedimiento de prueba de integración
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 56
Estrategias de integración incremental ascendente
Hacer grupos con módulos atómicos
Crear controlador para la prueba
Probar el grupo
Eliminar controlador y subir de nivel
Procedimiento de prueba de integración
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es
Procedimiento de prueba de integración
57
Descendente para niveles superiores
Ascendente para los inferiores Prueba de
unidad Prueba de
integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es
Pruebas de regresión
58
Asegurar el correcto funcionamiento cuando se produce un cambio en un sistema que ya estaba funcionando
Documentación
Ámbito - Qué se prueba
Plan de pruebas
Qué estrategia de integración
Fases
Planificación
Software adicional (resguardos, controladores)
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 59
Pruebas de regresión
Documentación
Procedimiento de prueba
Detalle de las pruebas
Orden de integración
Lista de los casos de prueba
Resultados esperados
Resultados obtenidos
Importante para el mantenimiento del SW
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es
Pruebas de validación
60
Prueba de que el software funciona como espera el cliente
Prueba de caja negra
Criterios
Plan de pruebas – Clases de pruebas
Procedimiento de pruebas – Definición de los casos de prueba
Error -> inversión de más tiempo
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 61
Pruebas de validación
Revisión de la configuración del software
Documentación
Datos
Programas
Objetivo: mantenimiento del software
Pruebas de aceptación
Aceptación del cliente
Pruebas Alfa (lugar de desarrollo)
Pruebas Beta (lugar del cliente)
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es
Pruebas del Sistema
62
SW + HW + datos + personal + … = Sistema
Quién es el culpable
Buena planificación de las pruebas
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es 63
Pruebas del Sistema
Prueba de recuperación
Prueba de seguridad
Prueba de resistencia
Prueba de rendimiento
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
Titulo de la Presentación www.kybele.urjc.es
Depuración
64
Proceso de eliminación del error
Enfoques:
Fuerza bruta
Vuelta atrás
Eliminación de causas
Corrección
¿Se repite en varias partes del programa?
¿Cuál es el siguiente error?
Prevención del error
Prueba de unidad
Prueba de integración Pruebas de regresión
Prueba del software
Validación y verificación
Pruebas de validación
Conceptos previos
Estrategias de prueba
Pruebas del sistema
Depuración
top related