Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Alfonsina Morgavi
Natalia Davidovich
Fernando Waisman
Agenda – Jornada 1
► Presentación
► Introducción
► Técnicas para derivar casos de prueba
Presentación
Facilitadores
►Natalia Davidovich
►Alfonsina Morgavi
►Fernando Waisman
1
20/10/2010
Presentación
Participantes
► Nombre
► Trabajo
Presentación
► Estructura:
Repaso de la clase anterior
Tema teórico
Clase práctica
2 break
Presentación
Taller – Objetivos
► Definiciones generales.
2
20/10/2010
Presentación
► ¿Preguntas ?
► … ARRANCAMOS!!!!
Agenda – Jornada 1
► Presentación
► Introducción
► Técnicas para derivar casos de prueba.
Introducción
3
20/10/2010
Introducción
Ingeniería de software
Introducción
Kaoru Ishikawa
«Calidad total es un modo de «Cumplimiento de los
vida corporativa, un modo de requerimientos y las
administrar una organización. especificaciones de un
Control de calidad total es un producto o servicio»
concepto que abarca a toda la
organización e involucra la Phillip Crosby
puesta en práctica de
actividades «Calidad es el alto grado de
orientadas hacia el cliente» uniformidad en la
producción»
Armand V. Feigenbaum
Edward Demming
Introducción
4
20/10/2010
Introducción
► Las pruebas de software, en inglés testing son los procesos que permiten
verificar y revelar la calidad de un producto software. Son utilizadas para
identificar posibles fallos de implementación, calidad, o usabilidad de un
programa de ordenador o videojuego. Básicamente es una fase en el
desarrollo de software consistente en probar las aplicaciones construidas.
Las pruebas de software se integran dentro de las diferentes fases del ciclo del
software dentro de la Ingeniería de software. Así se ejecuta un programa y
mediante técnicas experimentales se trata de descubrir que errores tiene.
Para determinar el nivel de calidad se deben efectuar unas medidas o pruebas
que permitan comprobar el grado de cumplimiento respecto de las
especificaciones iníciales del sistema. (Wikipedia).
Introducción
Aclarando conceptos…
Introducción
Ejercicio
► Discusión
5
20/10/2010
Introducción
Testing
Introducción
Cuando comenzar
► “El acto de diseñar tests es uno de los mecanismos conocidos más efectivos
para prevenir errores…
► El proceso mental que debe desarrollarse para crear tests útiles puede
descubrir y eliminar problemas en todas las etapas del desarrollo”
Boris Beizer. Software Testing Techniques, 2nd Ed.
Introducción
Cuando terminar
► Algunos Criterios
► Se corrieron todos los tests planeados sin detectarse ningún error
► % de cubrimiento de ciertas técnicas elegidas
► Fault-rate más bajo que un cierto valor especificado (# de errores por
unidad de tiempo de testing) + Niveles de severidad para los errores
► Se encontró un número predeterminado de errores (% del número total de
errores estimado)
► Se acabo el tiempo!!
6
20/10/2010
Introducción
Conceptos Generales
Introducción
Conceptos Generales
►Error
►Equivocación
►Falla (failure)
►Un defecto lleva a cero, una o más fallas: manifestación del defecto
►Manifestación del defecto
►Diferencia entre los resultados esperados y reales
Introducción
►Tests deben
7
20/10/2010
Introducción
Testing - Beneficios
►Beneficios directos
►Beneficios indirectos
►Mejora la documentación
►Se establece una cultura orientada a la calidad
►Tener información para la prevención de defectos
Introducción
► Pasos: Se deben describir todos los pasos necesarios para poder llevar
a cabo el caso
Introducción
Ejercicio
8
20/10/2010
Agenda – Jornada 1
► Presentación
► Introducción
► Técnicas para derivar casos de prueba
Partición de equivalencia
System
►El sistema tiende a comportarse en forma
equivalente para cada una de estas clases. Por este
motivo resulta útil identificar dichas clases al momento
de probar
Outputs
Partición de equivalencia
►¿Qué hacemos?
9
20/10/2010
►Pone el foco en los bordes de los valores de entrada y salida de las clases
de equivalencias
►Los errores tienden a estar en los bordes. Focalizando el testing en
estas áreas se incrementa la probabilidad de detectarlos
10
20/10/2010
Tabla de decisión
► Las condiciones representan inputs. Las acciones son los procesos que
deben ejecutarse dependiendo de la combinación de condiciones presentes
► Cada regla define una combinación única de condiciones que dispara las
acciones asociadas con dicha regla
Tabla de decisión
Condición 2
Condición n…
Acciones
Acción 1
Acción 2
Acción n…
11
20/10/2010
Tabla de decisión
► Si las condiciones son rangos de valores, crear casos para los bordes
del rango (complemento con Análisis de Bordes)
Tabla de decisión
Casado? Si Si No No
Buen estudiante? Si No Si No
Acción
Descuento ($) 60 25 50 0
Definición Jerárquica
12
20/10/2010
Definición Jerárquica
Un ejemplo:
Alta de cuenta
Pesos Dólares
Ejercicio
¿PREGUNTAS?
13
20/10/2010
MUCHAS GRACIAS!!!
Contacto
alfonsina.morgavi@gmail.com
nataliadavidovich@gmail.com
fwaisman@gmail.com
14