21
Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Embed Size (px)

Citation preview

Page 1: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Tipos de PruebasISF5501 Ingeniería de Software

Semana 14/2

Page 2: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Aprendizajes Esperados: Determina Planes de prueba basado

en requerimientos de negocio.

Contenidos: Describe las técnicas de detección y corrección de fallas en la etapa de

transición.

Page 3: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

1. Pruebas de Caja Blanca

2. Pruebas de Caja Negra

3. Pruebas de Sistema en Tiempo Real

4. Síntesis

Temario Semana 14-2

Page 4: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Garanticen que se ejercitan por lo menos una vez todos los caminos independientes de cada módulo.

• Mediante esta técnica, se pueden obtener casos de prueba que:

Se ejerciten todas sus decisiones lógicas.

Se ejecuten todas sus condiciones y con sus límites operacionales.

Se ejerciten las estructuras internas de datos para asegurar su validez.

Pruebas de Caja Blanca

Page 5: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Los errores lógicos y las suposiciones incorrectas.

• Las Pruebas de Caja Blanca se orientan principalmente a los siguientes tipos de errores:

A menudo creemos que los caminos lógicos tiene pocas posibilidades de ejecutarse cuando, de hecho, se puede ejecutar en forma regular.

Los errores tipográficos son aleatorios (traducción al lenguaje de programación)

Pruebas de Caja Blanca

Page 6: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

1. Pruebas de Caja Blanca

2. Pruebas de Caja Negra

3. Pruebas de Sistema en Tiempo Real

4. Síntesis

Temario Semana 14-2

Page 7: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Los métodos de prueba de caja negra se centran en los requisitos funcionales del software, orientadas al conjunto de condiciones de entrada del sistema.

Esta prueba reconoce errores en las siguientes categorías:• Funciones incorrectas o ausentes• Errores de interfaz• Errores de estructuras de datos o en accesos a BBDD

externas• Errores de rendimiento• Errores de inicialización o de terminación

La prueba de caja negra ignora intencionalmente la estructura de control (caja blanca) y centra su atención en el campo de la información.

Pruebas de Caja Negra

Page 8: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Partición Equivalente:

• Es un método de prueba de caja negra que divide el campo de entrada de un sistema en clases de datos de los que se pueden derivar casos de prueba.

• El diseño de casos de prueba para este método se basa en una evaluación de las clases de equivalencia para una condición de entrada.

• Típicamente, una condición de entrada es un valor numérico específico, un rango de valores, un conjunto de valores relacionados o una condición lógica.

Pruebas de Caja Negra

Page 9: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Análisis de Valores Límites (AVL):

• Ya que los errores tienden a darse en los límites del campo y no en el centro, se desarrolla esta técnica que nos lleva a la elección de casos de prueba que ejerciten aquellos valores límites.

• Esta técnica complementa la técnica de partición equivalente.

• Las prueba de AVL regularmente son llevadas a cabo en forma intuitiva por los desarrolladores y aplicando ciertas directrices es más completa y, por lo tanto, tendrá una mayor probabilidad de detectar errores.

Pruebas de Caja Negra

Page 10: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Técnica de Grafos causa-efecto:

• Es una técnica que proporciona una representación de las condiciones lógicas y sus correspondientes acciones.

• Dicha técnica sigue 4 pasos: Se listan para un módulo las causas (condiciones de

entrada) y los efectos (acciones), asignando un identificador a cada uno de ellos.

Se desarrolla un grafo de causa-efecto. Se convierte el grafo en una tabla de decisiones. Se convierte las reglas de la tabla de decisión a casos

de prueba.

Pruebas de Caja Negra

Page 11: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Prueba de Comparación:

• A menudo, donde la fiabilidad del software es absolutamente crítico (sistema de control de vuelo, centrales nucleares, etc.), desde el punto de vista del software se desarrollan versiones independientes de una aplicación usando las mismas especificaciones.

• En la situación anterior, se debe probar cada versión con los mismos datos de prueba, para asegurar que todas proporcionan una salida idéntica.

Pruebas de Caja Negra

Page 12: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Prueba de Comparación:

• A pesar de que se aplica esta técnica a sistemas críticos, no es infalible.

• Si el error se encuentra en las especificaciones de la cual se han basados todas las versiones, el error será encontrado en cualquiera de estas versiones; por el contrario, si todas las versiones producen resultados idénticos, pero erróneos, esta prueba no detectará el error.

Pruebas de Caja Negra

Page 13: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

1. Pruebas de Caja Blanca

2. Pruebas de Caja Negra

3. Pruebas de Sistema en Tiempo Real

4. Síntesis

Temario Semana 14-2

Page 14: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Por la naturaleza de los sistemas en tiempo real, a las pruebas se le agregará un nuevo y difícil elemento en su tratamiento: el tiempo.

El diseñador de pruebas no solo deberá considerar los casos de pruebas de caja blanca y de caja negra, sino que también la temporización de los datos y el paralelismo de los procesos que manipulan estos datos.

Pruebas de Sistema en Tiempo Real

Page 15: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Bajo esta técnica, las pruebas del software deben considerar el impacto de las fallas del hardware sobre el procesamiento del sistema.

Esta estrategia incluye cuatro pasos:• Prueba de tareas• Prueba de Comportamiento• Prueba intertareas• Prueba del Sistema

Pruebas de Sistema en Tiempo Real

Page 16: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

i. Pruebas de Tareas:

• Este es el primer paso en las pruebas de tiempo real y consiste en probar todas las tareas en forma independiente.

• Se diseñan pruebas de caja negra y caja blanca y se aplican a cada una de las tareas del sistema.

• Estas pruebas sólo descubren errores en la lógica y en el funcionamiento, pero NO errores a base de tiempo.

Pruebas de Sistema en Tiempo Real

Page 17: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

ii. Pruebas de Comportamiento:

• Se puede comparar el comportamiento del modelo del sistema (desarrollado durante el análisis) con el software ejecutable, para ver si existe concordancia.

• Una vez probada cada clase de sucesos, al sistema se le presentan estos sucesos en orden aleatorio y con una frecuencia también aleatoria.

• Se examina el comportamiento del sistema para detectar errores de comportamiento.

Pruebas de Sistema en Tiempo Real

• Se basa en la simulación del comportamiento del sistema y examinar dicho comportamiento en base a sucesos externos.

Page 18: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

iii. Prueba intertareas:

• Se prueban las tareas que se comunican con otras, con diferentes tasas de datos y cargas de procesamiento, para determinar si se producen errores de sincronización entre ellas.

• Adicional a lo anterior, se prueban las tareas que comunican colas de mensaje o almacenes de datos, para detectar errores en el tamaño de esas zonas de almacenamiento de datos.

Pruebas de Sistema en Tiempo Real

• Una vez que se han aislado los errores de tareas individuales y del comportamiento del sistema, la prueba se dirige a los errores relativos al tiempo.

Page 19: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

iv. Prueba del Sistema:• El software y el hardware están integrados, por lo que se

lleva a cabo una serie de pruebas complejas del sistema para intentar descubrir errores en la interfaz software/hardware.

Pruebas de Sistema en Tiempo Real

Page 20: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

1. Pruebas de Caja Blanca

2. Pruebas de Caja Negra

3. Pruebas de Sistema en Tiempo Real

4. Síntesis

Temario Semana 14-2

Page 21: Tipos de Pruebas ISF5501 Ingeniería de Software Semana 14/2

Síntesis• Las Pruebas son diseñadas principalmente para la

detección de errores en el software.

• Las pruebas, al igual que el diseño, debe cumplir con una serie de fundamentos para que se acerquen al concepto de calidad esperado para esta etapa.

• Las pruebas están orientadas a descubrir errores del sistema. No hay que olvidar que las pruebas modulares se realizan en su proceso de desarrollo.