Está en la página 1de 17

Pruebas de Software

Eje IV
Ing. Bruno Sosa
2020
Pruebas de Software
• El software se prueba para descubrir errores
que se cometieron de manera inadvertida
conforme de diseño y construyo.
• Una estrategia de prueba de software
proporciona una guía que describe los pasos
que deben realizarse de manera sistematica
para realizar las pruebas de software.
El Proceso de Prueba de Software

Prueba de Prueba del Prueba de


Componente Sistema Aceptación

Pruebas de Componente: se prueban los componentes individuales para asegurarse que


funcionan correctamente. La prueba se realiza de manera aislada.
Pruebas del Sistema: Los componentes se integran para formar el sistema. Consiste en
encontrar errores propios de la interacción entre componentes.
Pruebas de Aceptación. Es la etapa final. Se prueba con los datos proporcionados por el cliente
mas con datos de prueba. Esta prueba puede revelar errores y omisiones en la definición de
requerimientos del sistema. También pueden aparecer problemas de desempeño o
performance.
Jerarquía de Pruebas
Pruebas de Unidad: se prueban los componentes
individuales para asegurarse que funcionan correctamente.
Prueba del Sistema
La prueba se realiza de manera aislada.
Pruebas de Integración. Se centra en el diseño y la
arquitectura del software.
Pruebas de Validación Pruebas de Validación. se testea lo definido en los
requerimientos con lo construido.
Pruebas del Sistema: Los componentes se integran para
Pruebas de Integración formar el sistema. Consiste en encontrar errores propios de
la interacción entre componentes.

Prueba de
Unidad
Estrategia de Pruebas
Estrategia de Pruebas. Procedural
Validación y Verificación

• La Validación y Verificación de Software se utiliza para mostrar que el sistema se ajusta a su


especificación y que cumple con las expectativas del usuario.
• Validacion  Construimos el Producto correcto?
• Verificacion  Construimos el Producto correctamente?
Estrategias de Pruebas de SW
• Pruebas de Unidad
• Enfoca los esfuerzos en la unidad mas pequeña del diseño de
software: Componente o modulo de software
• Se prueba
• La interfaz se prueba para garantizar el flujo de datos correcto
desde y hacia el modulo.
• Las estructuras de datos locales se prueban su integridad
durante el algoritmo.
• Las condiciones de frontera se prueban para asegurar que el
modulo opera adecuadamente en las fronteras establecidas
para limitar o restringir su procesamiento
• Todas las rutas independientes a través de las estructuras de
control se ejercitan para asegurar que el modulo se ejecute al
menos una vez (Happy path).
• Se prueban todas las rutas de manejo de error.
Pruebas de Integracion

• Una apreciación errónea supone que si todos los módulos funcionan


bien por si mismos, deberían funcionar bien en conjunto.
• Son una técnica sistemática para construir la arquitectura del
software mientras se llevan a cabo pruebas para descubrir errores
asociados con la interfaz.
Pruebas de Integración. Enfoques

Enfoque “Big
Bang”
Integración
Incremental
Enfoque “Big Bang”
• Se combinan todos los componentes y se prueba el sw como un todo.
• Usualmente resulta en CAOS.
Integración Incremental
• El programa se construye y prueba en pequeños incrementos.
• Los errores son mas fáciles de aislar y corregir.
• Existen dos tipos de estrategias
• Integración Descendente
• Integración Ascendente
Integración Descendente
• Los módulos se integran al moverse
hacia debajo de la jerarquía de
control, comenzando con el modulo
principal.
• Los módulos subordinados se
prueban siguiendo la estructura
Primero en Profundidad o Primero en
Amplitud
Los pasos de la Integración Descendente
• El modulo de control principal se usa como controlador, y los
representantes (stubs) se sustituyen con todos los componentes
directamente subordinados al modulo de control principal
• Dependiendo del enfoque, los subordinados se sustituyen uno a la vez
con componentes reales.
• Al completar cada conjunto de pruebas, otro representante se sustituye
con el componente real
• Las pruebas de regresión pueden realizarse para asegurar que no se
introdujeran nuevos errores.
• El proceso continua desde el paso 2.
Integración Ascendente
• Comienza la construcción y la
prueba con módulos atómicos.
• Se elimina la necesidad de
representantes, ya que los módulos
de un determinado nivel siempre
están disponibles.
Integración Ascendente. Pasos
• Los componentes en el nivel inferior se combinan en grupos que
realizan una subfunción de software especifica.
• Se escribe un controlador a fin de coordinar la entrada y salida de
casos de prueba
• Se prueba el grupo
• Los controladores se remueven y los grupos se combinan
moviéndolos hacia arriba en la estructura del programa.
Pruebas de Regresión.
• Se aplica cuando se agrega un nuevo modulo al software.
• Es la nueva ejecución de algún subconjunto de pruebas que ya se
realizaron a fin de asegurar que los cambios no propagaron efectos
colaterales no deseados

También podría gustarte