Modelo pruebas

Post on 11-Apr-2017

1.673 views 0 download

Transcript of Modelo pruebas

Ingeniería de SoftwareTESTING

Facultad de Ingeniería en TICOSCAR EDUARDO SANCHEZ GARCIA

SEMILLERO Internet of Things

¿Productos Imperfectos?

MODELO DE PRUEBAS• Probar un producto de software es independiente de la

metodología de desarrollo utilizada para construirlo

• El testing requiere tiempo y presupuesto adicional

• No se puede lograr software de calidad, si las pruebas son planeadas para la última actividad del desarrollo

• La pruebas se deben mantener en todas las fases del proceso de desarrollo

• Las pruebas finales y depuraciones tienen como objetivo la certificación final de la calidad del producto

Conceptos Generales

• Failure (Falla): Ocurre cuando un programa no se comporta de la manera esperada. La falla es una propiedad estadistica de un sistema en ejecución.

• Fault (Falta): tiene lugar en el código del programa. La existencioa de una falta puede ocasionar una falla (failure) en el Sistema

• ERROR: Acción humana que provoca que un software contenga una falta (fault), y en consecuencia el sistema falla (Failure )

TestingVerificación

• Regresión -> Verificación después de cambios

• Operación -> Verifica confiabilidad (reliability) de operación bajo condiciones normales de uso

• Escala completa –> Asignar parámetros a valores extremos (stressing). Determinar tolerancia a fallos

• Rendimiento -> Capacidad (performance) de procesamiento del sistema bajo diferentes cargas

• Prueba de sobrecarga -> Verificar picos de carga. Determina cuando cae el rendimiento del sistema

• Prueba negativa -> Uso intencional y sistemático de manera incorrecta. Comportamiento en situaciones inesperadas.

TestingValidación

• Prueba basada en requisitos -> Validación de especificaciones funcionales: Casos de Uso, historias de usuario

• Pruebas ergonómicas -> Validación Interfaces Hombre - Máquina

• Prueba de documentación de usuario -> Validación de manuales y documentación de mantenimiento y servicio

• Prueba de Aceptación -> Validación del sistema en ambiente de producción:

1. alfa 2. beta

Niveles

Pruebas de Unidad: Verifica una unidad funcional Clase, paquete de servicio, subsistema.

Pruebas de Integración: Verifica que unidades de software trabajen juntas correctamente.

Pruebas de Sistema: Verifica el sistema completo y su aplicación en ambiente de producción.

Pruebas Unidad

En sistemas OO es más complejo realizar pruebas unidad que en sistemas estructurados:

• Se prueba a nivel de clase y método.

• Especificación (Caja Negra): Comportamiento externo

• Estructurales (Caja Blanca): Conocer diseño interno de la unidad

• Pruebas basadas en estado

Pruebas de Integración

• La prueba de integración se basa en los modelos de casos de uso y diagramas de secuencia.

• No se debe comenzar a realizar pruebas de integración hasta terminar pruebas unitarias.

• Se prueba a nivel de paquetes de servicio y componentes de software

• Identifica fallas imposibles de en las pruebas de una sola unidad

Pruebas de Sistema

• La prueba de sistema se basa en testing de operación, escala completa, negativas, basadas en requisitos y documentación de usuario.

• No se debe comenzar a realizar pruebas de sistema hasta terminar pruebas integración.

• Se prueba a nivel del sistema completo.

¿Herramientas de Testing?