Professional Documents
Culture Documents
Macario Polo Usaola Grupo Alarcos Departamento de Tecnologas y Sistemas de Informacin Universidad de Castilla-La Mancha Macario.Polo@uclm.es
1/51
Contenidos
Introduccin Generacin de casos de prueba Metodologas/modelos de proceso
MTPF TMAP
2/51
3/51
Niveles de prueba
4/51
Caja negra
5/51
Criterios de cobertura
Sentencias Decisiones Condiciones Todos los usos Caminos Funciones Llamadas Bucles Mutantes Casos de uso Escenarios Carga mxima Valores de prueba
6/51
Lneas de automatizacin
Tareas de generacin de casos
A partir del cdigo A partir del conocimiento del programa A partir de una especificacin formal
Tareas mecnicas
Ejecucin y control Facilidades de reejecucin
Tareas administrativas
Registro de especificaciones Obtencin de informes de resultados
8/51
Generacin de casos
Los valores de prueba se combinan para obtener buenos casos de prueba Estrategias de combinacin:
Todas las combinaciones (all combinations) Each choice Pairwise n-wise Random Antirandom
9/51
10/51
11/51
Demostracin
Pgina de testing combinatorio:
http://alarcosj.esi.uclm.es/CTWeb
14/51
15/51
16/51
17/51
18/51
19/51
Metodologa TMAP
Business Driven Test Management Descripcin completa de todo el proceso de pruebas
Adaptable
Kit de herramientas
20/51
1 Formular la misin y recolectar objetivos de las pruebas Factores crticos de xito, cambios, requisitos, procesos de negocio, etc.
BDTM
El elemento clave es determinar qu vamos a probar y con qu profundidad
Cliente
21/51
BDTM
Da control del proceso de pruebas al cliente Utiliza el lenguaje del cliente El esfuerzo de pruebas est relacionado con los riesgos del producto Proporciona la cobertura adecuada en cada lugar Da visibilidad a los resultados de las pruebas
22/51
Kit de herramientas
23/51
Kit de herramientas
El kit de herramientas incluye:
Tcnicas (cmo testear) Infraestructura (dnde y con qu testear) Organizacin (quin testea)
24/51
Kit.Tcnicas
Anlisis de riesgos del producto Estimacin de esfuerzos Gestin de defectos Mtricas Diseo de pruebas Revisin
25/51
Kit.Infraestructura
Entorno de pruebas
Entorno fsico DTAP (desarrollo; test; aceptacin; produccin) Elementos auxiliares: BB.DD.; SS.OO.; interfaces; datos; aplicacin Requisitos del entorno: seguridad, estndares
Kit.Organizacin
Poltica de pruebas Organizacin permanente de pruebas Organizacin de pruebas en proyectos Profesionales de pruebas/Roles
27/51
28/51
29/51
30/51
31/51
Fase de Planificacin
32/51
Planificacin.Actividades
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Establishing the assignment (Establecer la misin) Understanding the assignment (Entender la misin) Determining the test basis (Determinar la base de test) Analysing the product risks (Analizar los riesgos del producto) Determining the test strategy (Determinar la estrategia de pruebas) Estimating the effort (Estimar esfuerzo) Determining the planning (Planificar el proyecto) Allocating test units and test techniques (Recolectar uds. y tcnicas) Defining the test products (Definir los productos de test) Defining the organisation (Definir la organizacin) Defining the infrastructure (Definir la infraestructura) Organising the management (Organizar la gestin) Determining the test project risks and countermeasures (Determinar riesgos y contramedidas) Feedback and consolidation of the plan (Realimentar y consolidar el plan) 33/51
Fase de Preparacin
34/51
Preparacin.Actividades
1. Collection of the test basis (Recolectar la base de test) 2. Creating checklists (Crear listas de comprobacin) 3. Assessing the test basis (Evaluar la base de test) 4. Creating the testability review report (Crear informe de testability)
35/51
Fase de Especificacin
36/51
Especificacin.Actividades
1. Creating test specifications (Crear las especificaciones de prueba) 2. Defining central starting point(s) (Definir situaciones iniciales) 3. Specifying the test object intake (especificar la prueba de humo)
37/51
Tcnicas: diseo de pruebas Herramientas: gestin de defectos, de diseo de pruebas, de gestin de testware, de automatizacin, de rendimiento, de carga
38/51
Tcnicas: no aplicable Herramientas: gestin de testware, de datos, de diseo de pruebas, de ejecucin de pruebas
40/51
Fase de Ejecucin
41/51
Ejecucin.Actividades
1. Intake of the test object (Recepcin del objeto de pruebas) 2. Preparing the starting points (Preparacin de situaciones iniciales) 3. Executing the (re)tests (Ejecutar las pruebas) 4. Checking and assessing the test results (Comprobar y evaluar los resultados)
42/51
43/51
Finalizacin.Actividades
1. Evaluating the test process (Evaluacin del proceso de pruebas) 2. Preserving the testware (Conservacin del testware)
44/51
Se obtiene un informe de evaluacin del proceso Tcnicas: Lista de control Evaluacin del proceso de pruebas
45/51
Finalizacin.Conservar el testware
Objetivo: transferir el testware para que sea usable en el futuro Mtodo:
Seleccionar el testware que se conservar Refinar, completar y asegurar su accesibilidad Transferir el testware
Se obtienen:
Testware Inventario de testware
Tcnicas: no aplicables
46/51
Fase de Control
47/51
Control.Actividades
1. 2. 3. 4. Management (Gestin) Monitoring (Seguimiento) Reporting (Informes) Adjusting (Reajustar)
48/51
49/51
Permiten:
Implantar la estrategia de pruebas Detectar defectos de forma efectiva Reproducir las pruebas Disminuir la dependencia entre quien especifica y quien ejecuta Controlar calidad Transferir y mantener Planificar y controlar
51/51
Conceptos fundamentales
Situacin de prueba:
Situacin aislada bajo la cual el objeto de test muestra un comportamiento especfico que necesita ser probado Cada situacin ocurre por lo menos en un caso lgico
Caso lgico:
Describe en trminos lgicos las circunstancias en las que se examina el comportamiento del sistema. Se indican las situaciones de prueba que cubre este caso O sea, un caso lgico cubre una o ms situaciones 52/51 de prueba
Conceptos fundamentales
Caso fsico:
Elaboracin concreta de un caso lgico, con la asignacin de valores reales para las entradas y determinacin exacta del entorno O sea, que incluye: datos de entrada; configuracin del entorno; acciones; resultados esperados
Script:
Combina uno o ms casos fsicos
53/51
Relaciones
Cada situacin debe estar al menos en un caso Cada caso cubre una o ms situaciones Cada caso lgico se traduce a un caso fsico El script puede englobar varios casos fsicos
54/51
Relaciones
Cobertura: ratio entre lo que puede ser probado y lo que se prueba realmente con los casos de prueba
55/51
Ejemplo
Una tienda virtual:
Un pedido de ms de un libro Un pedido de exactamente un libro Si adems hay descuento cuando se supera un cierto umbral de precio total, tenemos: Calcular precio al pedir por encima del umbral Calcular precio al pedir por debajo del umbral Arriba tenemos cuatro situaciones de prueba.
56/51
Ejemplo
A partir de esas cuatro situaciones tenemos, p.ej., dos casos lgicos:
TC1: pedido de ms de un libro, pero por debajo del umbral TC2: pedido de un libro de precio mayor que el umbral
57/51
Ejemplo
Situaciones Un pedido de ms de un libro Un pedido de exactamente un libro Calcular precio al pedir por encima del umbral Calcular precio al pedir por debajo del umbral Casos lgicos TC1: pedido de ms de un libro, pero por debajo del umbral TC2: pedido de un libro de precio mayor que el umbral
58/51
Ejemplo
Casos fsicos:
Umbral: 50 Descuento: 10% Precios de tres libros: 18,50; 25,50; 65,00 TC1 (ms de un libro, por debajo de umbral):
Pedir libros 1 y 2 No esperamos descuento Precio del pedido: 44
Sobre la cobertura
Cobertura: ratio entre lo que puede ser probado y lo que se prueba realmente con los casos de prueba Tipo de cobertura: forma en la que se expresa la cobertura de las situaciones de prueba Ratio de cobertura: porcentaje de situaciones de prueba, segn el tipo de cobertura, que cubre la prueba
60/51
61/51
Cobertura de caminos
1 A 3
Situaciones cada camino individual (1,2,3,4,5,6,7) Nivel de cobertura: pasar una vez por cada camino:
Casos lgicos: 1-2-5-3-4-6 y 1-3-47
62/51
Cobertura de caminos
1 A 3
A: (1,2), (1,3), (5,2), (5,3) B: (2,4), (2,5), (3,4), (3,5) C: (4,6), (4,7) A: (1,2), (1,3), (5,2), (5,3) Casos lgicos:
1-2-4-6 1-3-5-3-4-7 1-2-5-2-4-6
B: (2,4), (2,5), (3,4), (3,5) C: (4,6), (4,7)
Otra solucin:
7
A: (1,2), (1,3), (5,2), (5,3) B: (2,4), (2,5), (3,4), (3,5) C: (4,6), (4,7)
1-2-5-3-4-6 1-3-5-2-4-7
63/51
Cobertura de caminos
1 A 3
Vida real
Efectividad, conectividad, rendimiento Funcionalidad, validacin Funcionalidad, validacin, facilidad de uso Adecuacin, efectividad, 66/51 facilidad de uso
Prueba semntica
Prueba sintctica
Checklist
De casos de uso
Checklist
Mtricas (I)
Horas de test por fase y actividad Entregables Progreso de defectos Productividad:
Horas de test/defecto N de tests por hora N de especificaciones por hora N de defectos/script N de test/defecto Distribucin de horas por fase de TMAP N de test/PF N de test/KLOC Horas de test/PF o KLOC
67/51
Mtricas (y II)
N de horas/pgina de documentacin N de defectos/pgina de documentacin N de casos/pgina N de pginas/PF Porcentaje de defectos detectados
68/51
Contenidos
Introduccin Generacin de casos de prueba Metodologas/modelos de proceso
MTPF TMAP
69/51