Está en la página 1de 27

Ing.

CIP Johana Jackelyn García García


ISTQB® Certified Tester Foundation Level (CTFL), Certificate No
15-CTFL-83827-03
Índice

Principios básicos del proceso de pruebas

Técnicas de diseño de pruebas

Procedimiento para el Diseño y construcción de


casos de pruebas
¿Por qué es necesario el proceso de pruebas?

Calidad La calidad del Software se ha convertido


en un factor determinante del éxito de
Software
sistemas técnicos o comerciantes y
productos.

Pruebas para Las pruebas y las revisiones aseguran la


mejorar la mejora de la calidad de productos
calidad software así como la calidad del proceso
de desarrollo en sí.
¿Por qué es necesario el proceso de pruebas?
Error – Defecto - Falla
Una persona
inserta un error. Que crea un defecto
en el software

Que produce una falla


en la operación
¿Por qué es necesario el proceso de pruebas?
El papel del proceso de prueba
en el proceso de desarrollo,
mantenimiento y operaciones

Reducir Mejorar la
riesgos calidad

Requisitos
contractuales
¿Por qué es necesario el proceso de pruebas?
Proceso de pruebas y calidad

De acuerdo a la norma ISO/IEC 9126 la calidad software consiste en:


Funcionalidad

Fiabilidad

Usabilidad

Eficiencia

Mantenibilidad

Portabilidad
¿Por qué es necesario el proceso de pruebas?

¿Cuántas pruebas son suficientes?

3
Los Siete Principios del Testing
Las pruebas muestran la presencia de defectos

Las pruebas exhaustivas son imposibles

Pruebas tempranas

Agrupación de defectos

Paradoja del pesticida

Las pruebas dependen del contexto

Falacia de ausencia de errores


Técnicas de Diseño de Pruebas
El proceso de desarrollo de pruebas

Durante el análisis de pruebas, se analiza la documentación


básica de las pruebas para determinar el objeto de las pruebas.

Durante el diseño de pruebas, se crean y especifican los casos


de prueba y los datos de prueba

La “Norma para la documentación de prueba de software”


(IEEE STD 829-1998)
Técnicas de Diseño de Pruebas
Categorías de técnicas de diseño de pruebas

Técnicas de diseño de prueba de caja negra: Conocidas como


técnicas basadas en la especificación.
Técnicas de diseño de prueba de caja blanca: Conocidas como
técnicas basadas en la estructura o estructurales.
Técnicas de Diseño de Pruebas
Técnicas basadas en la especificación o técnicas de caja negra

Partición de equivalencia: Los valores de entrada del software o


del sistema se dividen en grupos que se espera demuestren un
comportamiento similar, de manera que puedan ser procesados de la
misma forma.

Análisis de valores límite: Los valores máximos y mínimos de una


partición son sus valores límites.
Técnicas de Diseño de Pruebas
Ejemplo análisis de valores límites:
Un campo representa el número de unidades de un artículo en el
inventario. La capacidad máxima de la bodega es de 10000
artículos, son unidades completas.
Pasos:
1.- Identificar la variable: Q
2.- Identificar la clase equivalencia (CE) válida.
a). Valor límite inferior, valor menor al límite inferior, valor
mayor al límite inferior.

0<= Q<=10000

CE Válida
0 10000
-1 1 9999 10001
Técnicas de Diseño de Pruebas
Ejemplo análisis de valores límites:
Pasos:
4.- Crear un caso de prueba por cada valor identificado
5.- Identificar el representante para cada caso
N° Caso de prueba Representante
1 Q<0 No Válido -1
2 Q=0 Válido 0
3 Q>0 Válido 1
4 Q = 10000 Válido 10000
5 Q < 10000 Válido 9999
6 Q > 10000 No Válido 10001

Para el ejemplo se tendría 4 casos de prueba tomando la clase de


equivalencia válida
Procedimiento para el Diseño y Construcción de
Casos de Pruebas
Consideraciones para el inicio del diseño según documentos
Input
Requisitos de Usuario / Sistema / Funcionales / No Funcionales
Reglas de Negocio

Procesos de Negocio

Especificación de caso de uso

Documentos Normativos del Negocio

Manuales de Usuario

Conocimiento de Usuario Experto


Documentos de Gestión de Proyecto (centrándose en alcance
y cobertura)
Creación de listado inicial de casos de pruebas
El listado de casos de prueba debe contemplar la siguiente información:
Ejemplo 01:

ID Caso de Condición Datos de Condición Resultado


Descripción Propietario Prioridad
Prueba Previa Prueba Posterior Esperado

Registrar gastos
Se visualice los Registro exitoso
externos de un Se debe tener un
Código de Gasto, gastos de los gastos
CP-ACCH-01 Crédito acuerdo en
Importe, Datos registrados externos del
Ampliación de Hipotecario dtorres estado Solicitado Alta
para la dentro de la Crédito
Gastos Externos mediante la relacionado a
Imputación ampliación del Hipotecario en
funcionalidad de persona natural
Acuerdo el Acuerdo
Ampliación
Cálculo de la complejidad ciclomática para identificación de
escenarios
Cálculo de la complejidad ciclomática para identificación de
escenarios
Ejemplo 02:
Cálculo de la complejidad ciclomática para identificación de
escenarios
Se puede calcular de 3 formas:
1 Número de regiones
2 Aristas - Nodos + 2
3 Nodos predicados + 1

Para el ejemplo graficado se tiene:


Nodos= 9 Regiones = 4
Aristas= 11 Aristas - Nodos + 2 = 11 – 9 + 2 = 4
Nodos Predicados= 3 Nodos Predicados + 1 = 3 + 1 = 4

Presenta una Complejidad Ciclomática = 4


Casos linealmente independientes:
CP01-01: 1-2-3-8-1-9
CP01-02: 1-2-4-5-7-8-1-9
CP01-03: 1-2-4-6-7-8-1-9
CP01-04: 1-9
Diseño de datos de prueba – Método de particiones
equivalentes

Identificar las condiciones de las


entradas de los campos de la
interface. Considerar restricciones de
formato o contenido de los datos de
entrada.
Partición de
Equivalencia
Identificar clases de equivalencia
que pueden contener:
- Datos válidos.
- Datos inválidos o erróneos.
Diseño de datos de prueba – Método de particiones
equivalentes
Identificación de Clases de Equivalencia:
Ejemplo 03:
Diseño de datos de prueba – Método de particiones
equivalentes
Cuadro de Partición de Equivalencias:
Condición
Acción Ventana Clases Válidas Clases Inválidas
de Entrada
(2) Edad < 18
Presionar tab Edad (1) 18 ≤ edad ≤ 49
(3) Edad > 49
Solicitud de
Propietari
Presionar tab Préstamo (4) 1, 2 o 3 (5) Diferente a 1, 2, 3
os
Hipotecario
Tipo de (6) Terreno / (7) local comercial
Presionar tab
Inmueble Departamento Garaje
Cuadro de Combinatoria de Datos:
CP Descripción Edad Propietarios Tipo de Inmueble Resultado Esperado
01 (1) (4) (6) 25 1 Departamento Exitoso
“La edad debe ser un valor
02 (2) (4) (6) 16 2 Terreno
comprendido entre 18 y 49”
“La edad debe ser un valor
03 (3) (4) (6) 75 3 Departamento
comprendido entre 18 y 49”
“Número de propietarios
04 (1) (5) (6) 25 1 Departamento
incorrecto”
“El valor asignado al tipo de
05 (1) (4) (7) 25 2 Garaje
inmueble es inválido”
Diseño de datos de prueba – Método de particiones
equivalentes
Podría darse la necesidad de agrupar condiciones en el caso que ciertos
valores de una clase equivalente no tuvieran el mismo tratamiento de las
demás.
Por ejemplo: Si existe un tipo de inmueble que sólo se pueda asociar a un
rango de edad la partición sería:
Condición de
Acción Ventana Clases Válidas Clases Inválidas
Entrada
(3) Edad < 18 / inmueble
(4) Edad > 49 / inmueble
(1) 18 ≤ edad ≤ 30 /
departamento (5) 18 ≤ edad ≤ 30 / terreno
Solicitud de Tipo de
Presionar tab (6) 31 ≤ edad ≤ 49 /
Préstamo Inmueble - Edad (2) 31 ≤ edad ≤ 49 /
Hipotecario terreno departamento
(7) 18 ≤ edad ≤ 49 / local
comercial o garaje
Presionar tab Propietarios (8) 1, 2 o 3 (9) Diferente a 1, 2, 3
Diseño de datos de prueba – Método de particiones
equivalentes
Y el Cuadro de Combinatoria de Datos sería:
CP Descripción Edad Propietarios Tipo de Inmueble Resultado Esperado
01 (1) (8) 25 1 Departamento Exitoso
02 (2) (8) 16 2 Terreno Exitoso
“La edad debe ser un valor
03 (3) (8) 16 2 Terreno
comprendido entre 18 y 49”
“La edad debe ser un valor
04 (4) (8) 75 3 Departamento
comprendido entre 18 y 49”
“El tipo de inmueble terreno
solo puede asociarse a un
05 (5) (8) 25 2 Terreno
rango de edad entre 31 y 49
años”
“El tipo de inmueble
departamento solo puede
06 (6) (8) 40 1 Departamento
asociarse a un rango de edad
entre 18 y 30 años”
“El valor asignado al tipo de
07 (7) (8) 25 2 Garaje
inmueble es inválido”
“Número de propietarios
08 (1) (9) 25 1 Departamento
incorrecto”
Caso Práctico

Importante:
Prioriza los tests de tal
manera, que cual fuera el
momento en que se
detenga el testing haz
realizado el mejor testing en
el tiempo disponible.
Módulo de Contabilidad
Gracias