Documente Academic
Documente Profesional
Documente Cultură
Departamento de Informtica
Contenido
Definicin de defecto
Clasificacin de defecto
Deteccin de defectos
Tipo de pruebas
Plan de pruebas
Aseguramiento de la calidad
Herramientas de pruebas
3
Gestin de los defectos
Definicin de defecto
Un defecto provoca que un programa no cumpla de
manera completa y efectiva aquello para lo que fue
creado.
3
Gestin de los defectos
Tipos de defecto (hay ms)
Documentacin
Sintaxis
4
Gestin de los defectos
Tipos de defecto (hay ms)
Chequeo (mensajes de error, trazas, vaidaciones)
5
Gestin de los defectos
El coste de los defectos
Coste de resolver
Otros costes
Daos reales
Tiempo
Imagen
Confianza
Motivacin
6
Gestin de los defectos
El coste de los defectos
Requisitos (56%)
Cdigo (7%)
Diseo (27%)
Otros (10%)
Lazic L., Mastorakis N., "Cost Effective Software Test Metrics", WSEAS TRANSACTIONS on COMPUTERS, Issue 6, Volume 7, June 2008, pp. 599-619
7
Gestin de los defectos
El coste de los defectos
Requisitos (82%)
Cdigo (1%)
Diseo (13%)
Otros (4%)
Lazic L., Mastorakis N., "Cost Effective Software Test Metrics", WSEAS TRANSACTIONS on COMPUTERS, Issue 6, Volume 7, June 2008, pp. 599-619
8
Gestin de los defectos
Tipos de pruebas
Pruebas unitarias
Objetivo: comprobar que un mdulo de cdigo (funcin,
mtodo, clase,) funciona correctamente.
Pruebas funcionales
Objetivo: comprobar que el software desarrollado realizar
de manera funcionalmente correcta aquello para lo que fue
desarrollado.
Pruebas de Integracin
Objetivo: comprobar que los mdulos que componen el
cdigo desarrollado funciona correctamente una vez que
estos estn integrados entre s.
9
Gestin de los defectos
Tipos de pruebas
Pruebas de validacin (de aceptacin)
Objetivo: comprobar que el software desarrollado cumple
con las expectativas del cliente, tanto desde el punto de
vista de la funcionalidad (objetiva) como de la satisfaccin
del cliente (subjetiva)
10
Gestin de los defectos
Tipos de pruebas
Pruebas de caja blanca
Objetivo: comprobar desde el interior de los mdulos de
cdigo que estos funcionan de manera correcta.
Caja negra
Objetivo: comprobar desde el exterior (slo prestando
atencin a las entradas y salidas) de los mdulos de cdigo
que estos funcionan de manera correcta.
11
Gestin de los defectos
Pruebas de Caja Blanca. Introduccin
Objetivo: Probar el funcionamiento de la estructura de
control de las unidades de programacin.
Garantizan que se ejecutan una vez por lo menos
todos los caminos independientes de cada mdulo.
Prueban todas las decisiones lgicas en sus vertientes
verdedera y falsa.
Ejecutan todos los bucles.
Ejecutan todas las estructuras internas.
12
Gestin de los defectos
Pruebas de caja Blanca. Tcnicas
13
Gestin de los defectos
Prueba del camino bsico
Pasos:
Construir el grafo del programa acorde con la notacin.
Determinar el nmero de caminos independientes del programa. Esto se
traducir en el nmero mximo de pruebas a realizar en el programa.
14
Gestin de los defectos
Pruebas del camino bsico
Secuencia
While
If
Case
Until
15
Gestin de los defectos
Pruebas del camino bsico: Ejemplo
2
3
4
5
6
7
8 Camino 1: 1-9
Camino 2: 1-2-3-8-1-9
9 Camino 3: 1-2-4-5-7-8-1-9
Camino 4: 1-2-4-6-7-8-1-9
16
Gestin de los defectos
Prueba de bucles
Tipos:
Simples
Concatenados
Anidados
17
Gestin de los defectos
Pruebas de bucles simples
1. Saltarse el bucle.
2. Ejecutarlo slo una vez.
3. Pasar dos veces.
4. Hacer m pasadas, siendo m<n.
5. Hacer n-1 y n+1 pasos en el bucle.
18
Gestin de los defectos
Prueba de bucles anidados
19
Gestin de los defectos
Pruebas de bucles concatenados
Si el contador del primer bucle no se utliliza como valor inicial del segundo bucle,
pueden probarse como bucles simples.
20
Gestin de los defectos
Pruebas de caja negra
Objetivos:
21
Gestin de los defectos
Pruebas de caja negra. Objetivo
Las pruebas de la caja negra intentan encontrar errores
de los siguientes tipos:
22
Gestin de los defectos
Tcnicas de pruebas de caja negra
Algunas tcnicas que se basan en la filosofa de la caja
negra son:
Particin Equivalente
Anlisis de Valores Lmite
Grafos de Causa-Efecto
Pruebas de Comparacin
23
Gestin de los defectos
Particin equivalente
24
Gestin de los defectos
Anlisis de valores lmite
Se basa en la eleccin de casos de prueba que ejerciten los valores lmite.
La definicin de clase de equivalencia se har como en la Particin
Equivalente, pero se aplicar tanto a las condiciones de entrada como de
salida.
25
Gestin de los defectos
Grafos Causa-Efecto
26
Gestin de los defectos
Ejemplo prueba causa-efecto
27
Gestin de los defectos
Grafo Causa-Efecto
El grafo sera:
14
1 101
15
2 16
11 102
3
12
103
4 13
28
Gestin de los defectos
Prueba de comparacin
29
Gestin de los defectos
Plan de pruebas
El propsito del plan de pruebas es explicitar el alcance,
enfoque, recursos requeridos, calendario, responsables y
manejo de riesgos de un proceso de pruebas.
30
Gestin de los defectos
Plan de pruebas
Alcance. Indica el tipo de prueba y las
propiedades/elementos del software a ser probado.
Elementos a probar. Indica la configuracin a probar y las
condiciones mnimas que debe cumplir para comenzar a
aplicarle el plan. Por un lado, es difcil y arriesgado probar
una configuracin que an tiene errores; por otro lado, si
esperamos a que todos los mdulos estn perfectos, puede
que detectemos errores graves demasiado tarde.
31
Gestin de los defectos
Plan de pruebas
Estrategia. Describe la tcnica, patrn y/o herramientas a
utilizarse en el diseo de los casos de prueba. Por ejemplo,
en el caso de pruebas unitarias de un procedimiento, esta
seccin podra indicar: "Se aplicar la estrategia caja-negra.
La estrategia tambin explicita el grado de automatizacin
que se exigir, tanto para la generacin de casos de prueba
como para su ejecucin.
32
Gestin de los defectos
Plan de pruebas
Categorizacin de la configuracin. Explicita las condiciones
bajo las cuales, el plan debe ser:
Pendiente
Suspendido.
Repetido.
Culminado.
Tangibles. Explicita los documentos a entregarse al culminar
el proceso previsto por el plan: especificacin de pruebas,
casos de prueba, etc.
Procedimientos especiales. Identifica el grafo de las tareas
necesarias para preparar y ejecutar las pruebas, as como
cualquier habilidad especial que se requiera.
33
Gestin de los defectos
Plan de pruebas
Recursos. Especifica las condiciones necesarias y deseables
del entorno de prueba, incluyendo las caractersticas del
hardware, el software de sistemas, cualquier otro software
necesario para llevar a cabo las pruebas, as como la
ubicacin especfica del software a probar (qu mdulos se
colocan en qu mquinas de una red local) y la
configuracin del software de apoyo. La seccin incluye un
estimado de los recursos humanos necesarios para el
proceso. Tambin se indican cualquier requerimiento
especial del proceso: actualizacin de licencias, espacio de
oficina, tiempo en la mquina de produccin, seguridad.
34
Gestin de los defectos
Plan de pruebas
Calendario. Esta seccin describe los hitos del proceso de
prueba y el grafo de dependencia en el tiempo de las tareas
a realizar.
Manejo de riesgos. Explicita los riesgos del plan, las
acciones mitigantes y de contingencia.
Responsables. Especifica quin es el responsable de cada
una de las tareas previstas en el plan.
35
Gestin de los defectos
Asegurando la Calidad
Quality Assurance (QA): Es el "conjunto de actividades
planeadas y sistemticas implantadas dentro del sistema
de calidad, y demostradas segn se requiera para
proporcionar confianza adecuada de que un elemento
cumplir los requisitos para la calidad". Abarca,
tecnologas, productos, equipo humano
Como objetivo
Como organizacin (mtodo, proceso)
Como estructura (grupo especfico)
Puede ser
Interna: Seguridad empresarial
Externa: Seguridad al cliente
36
Gestin de los defectos
Asegurando la Calidad
El objetivo de la interfaz de Aseguramiento de la Calidad
de MTRICA Versin 3 es proporcionar un marco comn
de referencia para la definicin y puesta en marcha de
planes especficos de aseguramiento de calidad aplicables
a proyectos concretos.
37
Gestin de los defectos
Herramientas para asegurar la calidad
Estndares de desarrollo
Propios
Adoptados (Code Conventions for the Java Programming
Language de Oracle)
Soluciones de Diseo
38
Gestin de los defectos
Algunas herramientas SW
JUnit (http://www.junit.org/)
Cactus (http://jakarta.apache.org/cactus/)
JTest (http://www.parasoft.com/jsp/products/jtest.jsp/)
JMeter (http://jakarta.apache.org/jmeter/)
Crucible (http://www.atlassian.com/software/crucible/)
Selenium (http://seleniumhq.org/)
39
Gestin de los defectos
Caso prctico 1 y 2
40
Gestin de los defectos