Seminarios y Formacin
Tester Certificado
Nivel Bsico
Formacin para el Tester Certificado Nivel
Bsico de acuerdo al programa de estudios
del ISTQB
Control Documentos
Ubicacin Documento
Fecha
2008/06/14
Versin
Naturaleza del
Cambio
1.0
Creacin
documento
Elabora
Lcerro
Valida
Earango
Lzapata
Aprueba
Scorrea
Distribuir a
Todos
0 Introduccin
02 Tabla de Contenidos
El presente curso se ha desarrollado de acuerdo con el programa
de estudios del Certificado de Tester Nivel Bsico, que consta
de siete captulos:
Captulo 0
Captulo I
Captulo II
Captulo III
Captulo IV
Captulo V
Captulo VI
Introduccin.
Fundamentos de Pruebas.
Pruebas a travs del Ciclo de Vida del Software.
Tcnicas Estticas.
Tcnicas de Diseo de Pruebas.
Gestin de Pruebas.
Herramientas de Pruebas.
0 Introduccin
03 Organizaciones Internacionales
Programa de Capacitacin del ISTQB
0 Introduccin
04 Programa de Estudios y Evaluacin
El conjunto de diapositivas est basado en el Programa de
Estudios de Tester Certificado Nivel Bsico del ISTQB
A continuacin del curso de formacin se puede tomar el examen para obtener el
certificado de Tester Certificado, Nivel Bsico (Certified Tester,
Foundation Level)
La evaluacin es realizada por un examinador perteneciente a una organizacin
independiente (por ejemplo ISQI* o GASQ**)
Los temas de la evaluacin estn extrados de las secciones correspondientes
a las dadas en el curso de formacin. El examen es de tipo seleccin mltiple,
con una duracin de 60 minutos.
Cada pregunta tiene una (de cuatro) nica respuesta correcta.
Hay una ponderacin de preguntas por crditos (de acuerdo a su clasificacin
de dificultad) y son 40 preguntas en total. El 60% de crditos deben ser
respondidos en forma correcta con el objeto de aprobar el examen.
*ISQI = International Software Quality Institute
**GASQ = Global Asociation for Software Quality
0 Introduccin
05 Objetivos
Certificado.
Audiencia
Documentos
Fuente: Wikipedia.com
10
Fuente: Wikipedia.com
11
Defecto (Defect)
Desperfecto en un componente o sistema que pueda ser la causa por la cual el
sistema o componente no logre llevar a cabo su funcin especfica, por ejemplo;
sentencia o definicin de datos incorrectas.
Fallo (Failure)
Manifestacin fsica o funcional de un defecto. Si un defecto es encontrado
durante la ejecucin de una aplicacin puede producir un fallo.
Desviacin de un componente o sistema respecto de la prestacin, el servicio o
resultado esperados. (Fenton).
12
Error Humano
Condiciones Ambientales
13
Satisfacer Compromisos
14
La ejecucin de pruebas puede ser un requisito obligatorio por parte del cliente o
debido a normas legales as como el cumplimiento de estndares propios de la
industria especfica.
Calidad en el Software
Definicin: Calidad en el Software (segn ISO/IEC
9126)
15
16
Funcionalidad
Fiabilidad
Usabilidad
Eficiencia
Mantenibilidad
Portabilidad
Actividades analticas con el objeto de detectar defectos, por ejemplo a travs de pruebas
conducentes a la correccin de defectos y prevencin de fallos, incrementando as la calidad
del software.
Organizacin
Estndares
Listas de Comprobacin
Mtodos
Herramientas
Lenguajes
Listas / Plantillas
Entorno de Desarrollo, Integrado (IDE)
17
Consigna
Tcnico
QA Constructivo
Guas
Prevenir defectos.
Esttico
18
Caja Negra
Clases de Equivalencia
Anlisis de Valores de lmite
Pruebas de Transicin de estado
Tablas de decisin
Algoritmo Pairwise (En parejas)
Caja Blanca
Dinmico
QA Analtico
Cobertura de sentencia
Cobertura de rama
Cobertura de condicin
Cobertura de camino
Revisiones / ensayos
Anlisis del flujo de control
Anlisis del flujo de datos
Mtricas del compilador / analizador.
Consigna:
Los defectos deben ser
detectados tan temprano en el
proceso como sea posible.
Pruebas Estticas
Examen sin la ejecucin del
programa
Pruebas Dinmicas
Incluye la ejecucin del
programa.
19
Funcionalidad significa:
1.
2.
1.
Idoneidad
Precisin
Conformidad
Interoperabilidad
Seguridad
2.
3.
4.
5.
20
21
Fiabilidad:
Usabilidad:
Mantenibilidad:
Caractersticas: Medida del esfuerzo requerido para realizar cambios
en un sistema.
Portabilidad:
Caractersticas: Fcil de instalar y desinstalar. Parametrizable.
22
23
24
Comprobar la funcionalidad
Generar confianza
25
Precondiciones.
Conjunto de valores de entrada.
Conjunto de resultados esperados.
Forma en la cual se debe ejecutar el caso de prueba y verificar los resultados.
Poscondiciones esperadas.
Base de la prueba:
26
27
Deteccinidentificacin
de defectos
Correccin
de
defectos
Volver a
probar
(re-test)
proceso de prueba.
La depuracin y la correccin de defectos son actividades propias
del desarrollo.
28
29
30
31
Pruebas exhaustivas
Prueba de muestra
32
33
34
35
36
37
38
Plan de pruebas
(backtracking).
Cada fase del proceso de pruebas
Anlisis y diseo de
pruebas
Implementacin y
ejecucin de pruebas
Evaluacin del criterio de
salida y generacin de
informes
Actividades de cierre
de pruebas
39
40
41
42
Estrategia de pruebas:
(1) Descripcin a alto nivel de los niveles de prueba a llevar a cabo y las
pruebas asociadas a ellos para una organizacin o programa (uno o mas
proyectos).
(2) De acuerdo con el enfoque global, los esfuerzos aplicados a las pruebas
se reparten entre los objetos de prueba y los diferentes objetivos de las
pruebas: la eleccin del mtodo de prueba, como y cuando las actividades
asociadas a las pruebas debern ser ejecutadas y cuando se debe detener
el proceso de pruebas (criterio de finalizacin).
43
Positivos y negativos
Anlisis de la testabilidad.
44
45
Variable que es leda por un componente (tanto almacenada dentro del sistema como
fuera del mismo).
Datos que existen en el sistema antes de que una prueba sea ejecutada, y que afecta
o es afectado por el componente o sistema sujeto a pruebas.
46
Pruebas, tras la modificacin de un programa previamente probado, con el objeto de asegurar que
no se han introducido o descubierto defectos en reas que no hubieran sido objeto de modificacin
como resultado de los cambios realizados. Se realizan cuando el software o su entorno a sido
modificado.
47
Pruebas de regresin:
Documento en el cual se especifica una secuencia de acciones para la ejecucin de una prueba.
Tambin es conocido como guion de pruebas o guion de pruebas manuales.
Ejecucin de pruebas:
Repeticin de una prueba tras la correccin de un defecto con el objeto de confirmar que el defecto
ha sido eliminado con xito.
48
49
50
Rol: Tester
- Planifica actividades de pruebas
- Disea casos de prueba
- Su nica preocupacin es encontrar
defectos
- encontrar errores producidos por un
desarrollador es su xito
Percepcin
la actividad del desarrollador es
la actividad del tester es destructiva!
Constructiva!
Error!
Las pruebas tambin constituyen una actividad constructiva,
su propsito es la eliminacin de defectos en un producto!
51
52
Experiencia.
Factores personales influyen en la ocurrencia de errores.
La experiencia ayuda a identificar donde se pueden acumular
errores.
53
54
55
56
57
58
59
60
61
62
pruebas.
63
64
Pruebas de
aceptacin
Diseo funcional
del sistema
Pruebas de
sistema
Diseo tcnico
del sistema
Prueba de
Integracin
Especificacin
de componentes
Programacin
65
Prueba de
componente
Definicin de requisitos.
Diseo tcnico
del sistema
Diseo funcional
del sistema
Documentos de especificacin.
requisitos
Programacin.
Especificacin
de componentes
66
Pruebas de aceptacin.
Pruebas de
sistema
Pruebas de integracin.
Pruebas de sistema.
Prueba de
Integracin
Interfaces de componentes.
Pruebas de componente.
Prueba de
componente
Programacin
67
Pruebas de
aceptacin
Validacin
68
Cada nivel de desarrollo se verifica respecto de los contenidos del nivel que le
precede.
Verificar significa comprobar si los requisitos y definiciones de niveles previos han
sido implementados correctamente.
Definicin de
requisitos
Pruebas de
aceptacin
Pruebas de sistema
Prueba de Integracin
Especificacin de
componentes
Prueba de
componente
Verificacin
Programacin
69
Desarrollo e
integracin
Definicin de
requisitos
Pruebas de
aceptacin
Pruebas de sistema
Prueba de Integracin
Especificacin de
componentes
Prueba de
componente
Programacin
70
Verificacin
Desarrollo e
integracin
Validacin
Functional
requirements
Func. system
design
Func.
technical
design
Component
specification
71
Execution of
acceptance
test
Planning test
activities
Planning
systems test
Execution of
systems test
Planning
integration test
Planning
component
test
Execution of
integration test
Execution of
component
test
Programming
Debugging and
error correction
Debugging and
error correction
Debugging and
error correction
Debugging and
error correction
72
73
especfica.
El proceso de pruebas comienza con mucha antelacin a la
ejecucin de pruebas.
74
niveles de desarrollo.
75
Definicin
Pruebas de componente
Pruebas de
Aceptacin
Pruebas de
Sistema
Pruebas de
Integracin
Pruebas de
Componentes
Programacin
76
77
78
Componente
Stub
79
Datos
de
Prueba
tester
80
Tester = desarrollador
Se podr aplicar al diseo de casos de prueba el conocimiento de la
funcionalidad, estructura de componentes y variables.
Las pruebas funcionales sern pertinentes (con frecuencia).
Adicionalmente, el uso de depuradores (debuggers) y otras herramientas
de desarrollo permitirn acceso directo a las variables del programa.
81
Definicin
Pruebas de Integracin (tambin: Pruebas
de Interfaz)
82
Pruebas de
Aceptacin
Pruebas de
Sistema
Pruebas de
Integracin
Pruebas de
Componentes
Programacin
83
84
85
86
87
Ascendente (bottom-up)
Integracin
88
Pruebas
Descendente (top-down)
Integracin
Pruebas
Big Bang
Integracin
89
Definicin
Pruebas de Sistema
Pruebas del sistema de software integrado.
Las pruebas de sistema se refieren a (segn ISO 9126):
Requisitos Funcionales.
Funcionalidad.
Pruebas de
Sistema
Requisitos no funcionales.
90
Pruebas de
Aceptacin
Fiabilidad.
Usabilidad.
Eficiencia.
Modificabilidad.
Portabilidad.
Pruebas de
Integracin
Pruebas de
Componentes
Programacin
91
Adecuacin/idoneidad (suitability)
Exactitud (accuracy)
Seguridad (security)
92
Conformidad (compliance)
Interoperatibilidad (interoperability)
93
lograr:
Ejemplo: Prueba de mantenibilidad
94
95
Las pruebas de sistema funcionales confirman que los requisitos para un uso
especfico previsto han sido satisfechos (validacin).
Con frecuencia, los atributos de calidad no funcionales son una parte implcita
de los requisitos, esto hace difcil validarlos.
Definicin
Pruebas de Aceptacin.
Las pruebas de aceptacin son pruebas formales
Pruebas de
Aceptacin
96
de aceptacin.
97
operativo.
98
99
100
Las pruebas de aceptacin son las pruebas de sistema por parte del cliente.
Las pruebas alpha y beta son pruebas ejecutadas por clientes reales o
potenciales, en las dependencias del desarrollador (alpha) o en las
dependencias del cliente (beta).
Tipos de pruebas
101
mbito de Aplicacin
Las pruebas funcionales se pueden llevar a cabo en todos los niveles de prueba.
Ejecucin.
102
mbito de Aplicacin
103
Ejecucin
La conformidad con los requisitos no funcionales se miden utilizando requisitos
funcionales (seleccionados).
104
105
mbito de aplicacin.
Ejecucin.
106
mbito de aplicacin.
107
108
109
Nota:
111
112
Prueba de todas la partes del software que han sido objeto del cambio.
113
114
115
116
Ventajas:
Costos bajos y un potencial de ahorro relativamente alto.
Defectos en la documentacin son detectados y corregidos temprano
Los documentos de alta calidad mejoran el proceso de desarrollo.
Mejora el ndice de comunicacin / intercambio de conocimiento (know - how)
Desventajas:
Se podran presentar situaciones de tensin en el caso de enfrentamientos
directos con el autor.
Los expertos involucrados en las revisiones deben adquirir conocimientos
especficos del producto, es necesario una buena preparacin.
Inversin considerable de tiempo (del 10% - 15% del presupuesto total).
Moderador y participantes influyen directamente en la calidad de la revisin
117
Fase de planificacin.
Preparacin de la organizacin e inicio (kick off).
Preparacin individual.
Reunin de revisin.
Reprocesos
Seguimiento (follow up)
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
Propsito
Detectar defectos causados por un desarrollo anmalo del
cdigo (ramas muertas, cdigo muerto etc)
Mtodo
La estructra del cdigo se representa como un diagrama de
control de flujo.
Grafo dirigido
Los nodos representan sentencias o secuencias de
sentencias.
Las aristas representan la transferencia del flujo de
control, como decisiones y bucles.
Construccin mediante herramientas.
Resultados
Visin del conjunto del cdigo del programa comprensible.
Las anomalas, pueden ser fcilmente detectadas:
Ramas muertas
Retornos mltiples.
136
137
Propsito
Deteccin de anomalas en el flujo de datos con la asistencia de los diagramas
de control de flujo y conjeturas racionales respecto de las secuencias del flujo de
datos.
Beneficios
Deteccin fiable de anomalas que den los flujos de datos.
Detectar fcilmente la localizacin exacta de defectos.
Es un buen complemento para otros mtodos de pruebas.
Desventajas
Limitado a un rango reducido de tipos de defectos.
138
Mtodo
Una variable x puede tener los siguientes estados a lo largo de la ejecucin de
un programa:
X se encuentra definida (d): ha sido un valor asignado a la variable x (por
ejemplo x=1).
X se encuentra indefinida (u: no ha sido asignado valor alguno a la
variable x.
X est referenciada (r)>ha sido tomada una referencia, el valor de x no
cambia (por ejemplo (x>0)).
X no ha sido utilizada (e): x no ha sido referenciada (ni en lectura ni en
escritura).
El flujo de datos de una variable puede ser expresado como una secuencia de
estados: d, u, r y e.
Si una de estas secuencias contiene una sub-secuencia que no tiene sentido,
entonces ha tenido lugar una anomala en el flujo de datos.
}
End MinMax
139
Max = Min;
Max = Min;
Help = Min;
Min = Help;
}
End MinMax
140
141
v(G) = e n + 2p
Ejemplo III/03-2
(Nmero Ciclomtico).
El grafo de la derecha tiene:
1 parte independiente
14 nodos
19 aristas.
Esto conduce al nmero ciclomtico:
v(G) = e n + 2p
1
1
3
p=1
n=14
e=19
4
19
v(G) = e n + 2p
2 2
5
5 6
7
13
8
12
9
11 10
11
9
16
15
10
14
12
v(G) = 7
17
13
18
14
142
143
144
145
Objeto de
pruebas y
requisitos sobre
el objeto de
pruebas
146
Definicin de
requisitos de
las pruebas y
criterios de
pruebas
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 4
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
147
Definicin de
requisitos de
las pruebas y
criterios de
pruebas
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
Caso de
prueba 1
148
149
150
151
Los casos de prueba y los (test suites) son obtenidos a partir de los requisitos o
caractersticas de los objetos de pruebas.
Esttico
152
Caja Negra
Participacin de equivalencia
Analisis de valores lmite
Prueba de transicin de estado
Tablas de decisin
Algoritmo dual (pairwise)
Caja Blanca
Dinmico
QA Analtico
Cobertura de sentencia
Cobertura de rama
Cobertura de condicin
Cobertura de camino
Revisiones / Walkthroughs
Anlisis del flujo de control
Anlisis del flujo de datos
Mtricas compilador / analizador
- La agrupacin se realiza en
funcion del carcter bsico del
mtodo utilizado para obrener
los casos de prueba .
Caja Negra
Caja Blanca
153
Objeto de prueba
Caja negra
Los casos de prueba son seleccionados con base en la estructura interna del
programa / cdigo
La estructura del programa es el foco de atencin!
154
La
estructura interna del objeto de prueba es utilizada para disear los casos de
prueba (cdigo / sentencias, mens, llamadas, etc.)
El
155
156
157
de valores lmites.
Pruebas
de transicin de estado.
Pruebas
de caso de uso.
158
Las
159
160
x<=0
2.
3.
X>=10
Entradas no numricas.
161
Todas las variables de entradas (input variables) del objeto de prueba son
identificados, por ejemplo:
162
Todos los valores >=0 son vlidos y todos los valores negativos o no numricos
(fred) son no vlidos.
163
CE no vlida:
Valores con un formato correcto pero fuera del rango pueden ser
combinados en una o ms clases de equivalencia.
Variable
Peso
164
Clase de equivalencia
Representante
EC1: x>=0
+1,00
EC2: x<0
-1,00
EC3: x no es un nmero
fred
165
Las clases de equivalencia tambin pueden ser generadas a partir de los valores
de salida esperados.
Las clases de equivalencia son generadas para todos los posibles valores de
la salida definidos.
Implica mayores costos y esfuerzo dado que los valores de entrada deben ser
obtenidos para una salida determinada de forma recursiva
166
Particin.
Casos de prueba.
Seccin de representantes.
167
168
169
170
Beneficios.
Mtodo sistemtico para el diseo de casos de prueba por ejemplo, con una
mnima cantidad de casos de prueba se pueden esperar un valor de
cobertura especfico.
Las pruebas de las excepciones conocidas est cubierta por los casos de
prueba de acuerdo con las clases de equivalencia negativa.
Peso
Descuento
Precio del
porte
171
Clase de
equivalencia
Estado
Representante
EC11: x>=0
Vlido
1000,00
EC12: x<0
No vlido
-1000,00
EC13: x valor no
numrico
No vlido
fred
Vlido
10%
EC22: x<0%
No vlido
-10%
EC23: x>100%
No vlido
200%
EC24: x valor no
numrico
No vlido
fred
EC31: x=6
Vlido
EC32: x=9
Vlido
EC33: x=12
Vlido
12
No vlido
EC35: x valor no
numrico
No vlido
fred
EC21: 0%=<x=<100%
Suposiciones:
El precio de venta al
pblico de un artculo est
dado por un nmero con
dos decimales.
El descuento es el valor
porcentual sin decimales
entre 0% y 100%.
El precio del porte puede
ser 6, 9 12.
Peso
Descuento
Precio del
porte
172
Clase de
equivalencia
Estado
Representante
T01
T02
T03
EC11: x>=0
Vlido
1000,00
EC12: x<0
No vlido
-1000,00
EC13: x valor no
numrico
No vlido
fred
Vlido
10%
EC22: x<0%
No vlido
-10%
EC23: x>100%
No vlido
200%
EC24: x valor no
numrico
No vlido
fred
EC31: x=6
Vlido
EC32: x=9
Vlido
EC33: x=12
Vlido
12
No vlido
EC35: x valor no
numrico
No vlido
fred
EC21: 0%=<x=<100%
*
*
*
Los siguientes casos de prueba han sido generados utilizando CE no vlidas, cada una
en combinacin con CE vlidas de otros elementos.
Variable
Peso
Descuento
Precio del
porte
173
Clase de
equivalencia
Estado
Representante
EC11: x>=0
Vlido
1000,00
EC12: x<0
No vlido
-1000,00
EC13: x valor no
numrico
No vlido
fred
Vlido
10%
EC22: x<0%
No vlido
-10%
EC23: x>100%
No vlido
200%
EC24: x valor no
numrico
No vlido
fred
EC31: x=6
Vlido
EC32: x=9
Vlido
EC33: x=12
Vlido
12
No vlido
EC35: x valor no
numrico
No vlido
fred
EC21: 0%=<x=<100%
T04
T05
T06
T07
T08
T09
T10
*
*
*
*
*
*
*
*
*
Variable
Peso
Descuento
Precio del
porte
174
Estado
Representante
T01
T02
T03
Vlido
1000,00
No vlido
-1000,00
No vlido
fred
Vlido
10%
No vlido
-10%
No vlido
200%
No vlido
fred
Vlido
Vlido
Vlido
12
No vlido
No vlido
fred
T04
T05
T06
T07
T08
T09
T10
*
*
*
*
*
*
*
*
*
*
*
Importante:
175
Valor mnimo
Lmite inferior
Lmite inferior - ?
Valor mximo
Lmite Superior
Valor mximo + ?
176
177
178
1. CE: x<0
2. CE 0,00<=x<=100,00
3. CE: x>100
Nota importante:
179
Esquema bsico: seleccionar tres valores con el objeto de ser probados el valor
lmite exacto y dos valores pertenecientes al entorno (dentro y fuera del CE).
Punto de vista alternativo: dado que el valor lmite pertenece a la CE, slo son
necesarios dos valores para las pruebas, uno perteneciente al CE y otro no
perteneciente al CE.
Ejemplo 3b:
CE vlido: 0,00<=x<=100,00
180
181
182
Reglas de Decisin
183
Identificacin de Ex
Condiciones
Valores de Condiciones
Identificacin de Acciones
Valores de Acciones
184
185
Variable
Precondiciones
(causas)
Actividades (Efectos)
186
Clase de equivalencia
T01
T02
T03
T04
T05
Suficiente cobertura
SI
NO
Datos Vlidos
SI
NO
TAN vlida
SI
NO
Realizar transferencia
SI
NO
NO
NO
SI
NO
NO
NO
Denegar transferencia
NO
SI
SI
NO
NO
NO
NO
SI
187
188
189
190
191
Beneficios.
Desventajas.
192
193
194
Beneficios.
Ejemplo:
Una caja representa un estado de la pila, una flecha representa una transicin, la
descripcin de la flecha indica una accin.
Start
push
Empty
Filled
pop
End
195
push
Full
pop
196
Para cada estado que puede ser alcanzado desde el estado inicial, se crea
un nodo que est conectado a la raz a travs de una rama.
Cada camino, desde la raz hasta una hoja, representa un caso de prueba para
las pruebas de transicin de estado
197
Paso
1
Start
init
Empty
delete
push
delete
Filled
push
Filled
pop
push
pop
Filled
Full
Empty
pop
Filled
198
Paso
2
Paso
3
Paso
4
Paso
5
Estado
final
Init
Delete
Delete
Init
Push
Push
Filed
Init
push
Pop
Empty
Init
push
Push
Pop
Filed
Init
push
Push
Push
Full
Init
push
Push
Push
Pop
filled
199
Buen mtodo de pruebas para probar clases, slo en el caso de disponer del
ciclo de vida del objeto.
200
Los casos de prueba se obtienen directamente a partir de los casos de uso del
objeto de prueba.
Los casos de uso son elementos del Lenguaje Unificado de Modelado (Unified
Modeling Language- UML*)
*:UML es un lenguaje de especificacin no propietario para el modelado de objetos.
Cada caso de uso puede ser utilizado como la fuente para un caso de prueba.
201
Order Food
Server food
Chef
Walt Stalf
Eat food
Cliente
Drink Wine
Pay for food
Cashier
202
System
Cada caso de uso describe una cierta tarea (interaccin usuario- sistema).
La descripcin de un caso de uso incluye, pero no est limitada a:
203
204
Beneficios.
Desventajas
205
Por lo tanto ste mtodo debera ser utilizado slo en combinacin con
otros mtodos de diseo sistemtico de casos de prueba.
206
207
208
209
Otras tcnicas de caja blanca son las siguientes (no limitada a la enumeracin):
La teora establece que todas las partes de un programa debera ser ejecutado
por lo menos una vez .
210
Ejecucin de la prueba.
211
Consumo de recursos.
212
Todas las instrucciones estn representadas por nodos y el flujo de control entre
instrucciones est representado por una arista (flecha).
213
Ejemplo 1 / 1
}
}
}
214
215
216
217
El cdigo muerto, es decir, cdigo constituido por sentencias que nunca se ejecutan,
ser detectado.
Instrucciones faltantes es decir, cdigo que es necesario con el objeto de cumplir con la
especificacin, no puede ser detectado.
218
219
Ejemplo
En este ejemplo el diagrama es ligeramente ms
complejo.
220
Lograr una cobertura de decisin del 100% requiere, al menos, los mismos
casos de prueba que requiere la cobertura de sentencia (ms en muchos
casos).
Desventajas.
221
222
223
Ejemplo
Considerar la siguiente condicin.
a>2 OR b <6
Los casos de prueba para la cobertura de
condicin simple podrn ser por ejemplo
224
a=6 (true)
b=9 (false)
a>2 OR b<6
(true)
a=1 (false)
b=2 (true)
a>2 OR b<6
(true)
Todas las combinaciones que puedan ser creadas usando las permutaciones
de las sub condiciones atmicas, deben formar parte de las pruebas
225
b=9 (false)
b=2 (true)
b=2 (true)
b=9 (false)
Sin embargo tiene como resultado un alto nmero de casos de prueba: 2 ^n.
226
Por ejemplo x >5 AND x <10 ambas sub-condiciones no pueden ser falsas al
mismo tiempo.
227
228
Ejemplo:
El diagrama de flujo de control de la imagen a la
derecha, representa el segmento de programa a ser
evaluado.
229
Ejemplo:
El diagrama de flujo de control de la imagen a la
derecha, representa el segmento de programa a
ser evaluado. Contiene dos sentencias if y un
bucle en el interior de la segunda sentencia if.
230
231
Los mtodos de caja blanca y caja negra son mtodos dinmicos, el objeto de
prueba es ejecutado durante las pruebas.
Principalmente, los mtodos de caja blanca son utilizados en pruebas de bajo nivel como
pruebas de componente o pruebas de integracin.
232
233
234
Problemas de desarrollo.
235
236
Procedimiento iterativo.
237
238
Procedimiento:
Herramientas de captura pueden ser tiles para registrar las actividades de prueba.
239
Las pruebas son ejecutadas de la misma manera que lo son los casos de
prueba definidos de forma sistemtica.
240
241
Hay suficiente material de especificacin para definir pruebas de caja negra, o son
necesarias pruebas exploratorias para comenzar?
Son necesarias pruebas estructurales para lograr los objetivos del proceso de prueba?
242
ha habido algn acuerdo especfico entre el cliente / iniciador del proyecto respecto de los
procedimientos de prueba?
243
Buena prctica
Niveles de prueba
244
245
246
V Gestin de pruebas
00- Agenda
Captulo V Gestin de pruebas (Test management)
247
V Gestin de pruebas
01- Organizacin del proceso de pruebas
La gestin de pruebas como parte del proceso de pruebas
248
Actividad
Concepcin de pruebas
Planificacin de pruebas
Control de pruebas
Pruebas de aceptacin
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Los equipos de prueba deberan ser independientes
Ventajas
Desventajas.
249
Los testers tambin son miembros del equipo del proyecto o estructura de
la organizacin.
Equipos de prueba externos.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Perfiles del personal de pruebas
Tester
Nota
250
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Jefe de pruebas (Test leader) {Tambien director de pruebas (Test
manager) o coordinador de pruebas (Test coordinator)}
251
Habilidades de gestor.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Diseador de pruebas (Test desinger)
252
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Ingeniero de automatizacin de pruebas (Test automation engineer)
253
Conocimientos de programacin.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Administrador del sistema de pruebas (Test system administrator)
254
Redes, si aplica.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tester de Software (Software Tester)
255
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Experto tcnico (Technical expert)
Experto en redes.
256
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Competencias no tcnicas (Soft skills)
257
Meticulosidad y creatividad.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Organizacin de equipos de pruebas.
Planificacin
Diseo de casos
Ejecucin
de prueba
Actividades de
Actividades de
Ejecucin de
infraestructura
infraestructura
Pruebas
de pruebas
de pruebas
Equipo de
pruebas
funcionales
Equipo de
pruebas
Equipo de
pruebas
258
Evaluacin y
control
Evaluacin
de pruebas
Equipo de
pruebas
funcionales
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 1
259
Estrategia de pruebas
*Esta no es una tarea propia del jefe de pruebas, la gestin de la configuracin es necesaria en
todas las fases de desarrollo de un producto.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 2
260
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 3
261
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 4
Planificacin de pruebas.
262
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 5
263
Esta es la base para una posterior definicin de las reglas para los
requisitos de prueba y estrategia de pruebas.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 6
264
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 7
265
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 8
266
Especificacin.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 9
Ejecucin y control.
267
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 10
268
Evaluacin.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del jefe de pruebas / 11
Evaluacin.
269
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del Tester
270
Ejecucin de pruebas.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del Tester / 1
271
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del Tester / 2
272
Ejecucin de pruebas.
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Tareas del Tester / 3
273
V Gestin de pruebas
01- Organizacin del proceso de pruebas
Resumen
274
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Actividades de planificacin de pruebas
275
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
La planificacin de pruebas es parte de la planificacin de la calidad en su
conjunto.
276
Proceso de pruebas.
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
La plan de pruebas (esttico)
277
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
La plan de pruebas de acuerdo al estndar IEEE 829
1.
Introduccin.
2.
Supuestos.
3.
tems de prueba.
4.
5.
6.
Enfoque.
7.
8.
Criterios de suspensin/reanudacin.
9.
Entregables de pruebas.
278
16. Aprobacin.
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Actividades a realizar
279
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Actividades a realizar Estrategia de pruebas (Test strategy)
280
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Actividades a realizar Planificacin de recursos (resource planning)
281
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Actividades a realizar Planificacin de pruebas (test planning)
282
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Criterios de salida de pruebas (test exit criteria)
283
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Criterios de salida de pruebas (test exit criteria)
284
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Criterios de salida de pruebas (test exit
criteria)
Economa del proceso de pruebas.
285
C
ca ost
lid e t
ad ot
al
d
r
rro
le
de
ste
Co
Coste mnimo
de la calidad
e
Cost
iones
s
i
v
e
de r
Grado de la calidad
C
de ostes
err de
or
la
pre
ve
nc
in
Costes
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Estimacin de pruebas- factores (sntesis)
286
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Estimacin de pruebas: estimacin basada en tareas /1
287
Mtodo.
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Estimacin de pruebas: estimacin basada en tareas / 2
288
Ventajas.
Las tareas pueden ser asignadas a grupos (por ejemplo pequeo, mediano,
grande) y los esfuerzos son estimados para un representante del mismo.
Desventajas.
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Estimacin de pruebas: estimacin basada en analogas /1
289
Mtodo.
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Estimacin de pruebas: estimacin basada en analogas / 2
Ventajas.
290
Desventajas.
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Estimacin de pruebas: estimacin basada en porcentaje /1
291
Mtodo.
Este mtodo tambin puede ser utilizado para parte del trabajo
(por ejemplo estimacin para los costes de gestin de proyecto,
estimacin del esfuerzo de pruebas para las pruebas des sistema)
V Gestin de pruebas
02- Planificacin y estimacin de pruebas
Estimacin de pruebas: estimacin basada en porcentajes / 1
Ventajas.
292
Desventajas.
V Gestin de pruebas
03- Seguimiento y control del estado de las pruebas.
Planificacin de pruebas, seguimiento de pruebas y control de pruebas
293
V Gestin de pruebas
03- Seguimiento y control del estado de las pruebas.
Informe del estado de pruebas /1
294
V Gestin de pruebas
03- Seguimiento y control del estado de las pruebas.
Informe del estado de pruebas / 2
detectados?.
295
V Gestin de pruebas
03- Seguimiento y control del estado de las pruebas.
Control de pruebas
Las tareas de direccin pueden incluir otras reas del proyecto principal /
tareas ajenas al alcance de pruebas.
296
Los criterios de salida de pruebas tambin son registrados con las mtricas
de progreso de pruebas.
V Gestin de pruebas
03- Seguimiento y control del estado de las pruebas.
Medidas de control de pruebas
Mas presupuesto.
297
V Gestin de pruebas
03- Seguimiento y control del estado de las pruebas.
Resumen
298
V Gestin de pruebas
04- Gestin de la configuracin
Observaciones generales
299
V Gestin de pruebas
04- Gestin de la configuracin
Definiciones
Gestin de la configuracin GC(configuration management (CM)) se
refiere a un conjunto de medidas que complementan al desarrollo del
software:
300
V Gestin de pruebas
04- Gestin de la configuracin
Problemas tratados por la gestin de la configuracin
301
V Gestin de pruebas
04- Gestin de la configuracin
Los requisitos sobre GC conforman el punto de vista del proceso de
pruebas
302
V Gestin de pruebas
04- Gestin de la configuracin
Auditoria de la configuracion (configuration audit)
303
V Gestin de pruebas
04- Gestin de la configuracin
Resumen
304
V Gestin de pruebas
05- Riesgo y proceso de pruebas
Riesgo
305
V Gestin de pruebas
05- Riesgo y proceso de pruebas
Riesgos asociados al proyecto
306
V Gestin de pruebas
05- Riesgo y proceso de pruebas
Tipos de riesgos asociados al proyecto (ms frecuentes)
307
Riesgos tecnolgicos.
V Gestin de pruebas
05- Riesgo y proceso de pruebas
Riesgos asociados al producto
308
Las pruebas se ejecutan para reducir u evitar los riesgos asociados al producto.
V Gestin de pruebas
05- Riesgo y proceso de pruebas
Gestin de riesgos asociados al producto / 1
309
V Gestin de pruebas
05- Riesgo y proceso de pruebas
Gestin de riesgos asociados al producto / 2
310
Los fallos peligrosos son detectados de forma temprana, por lo tanto se hace
ms econmica su correccin.
V Gestin de pruebas
05- Riesgo y proceso de pruebas
Resumen
311
V Gestin de pruebas
06- Gestin de incidencias
Deteccin de errores durante las pruebas
En este punto (temporal), las tareas del tester han finalizado por este
momento.
312
V Gestin de pruebas
06- Gestin de incidencias
Quin hace qu? / 1
313
El tester.
V Gestin de pruebas
06- Gestin de incidencias
Quin hace qu? / 2
314
Desarrollador
Desarrollador (developer)
Tester.
V Gestin de pruebas
06- Gestin de incidencias
Estructura de un informe de incidencias (informe de errores)
315
Entorno de pruebas
Clasificacin de errores.
V Gestin de pruebas
06- Gestin de incidencias
Estructura de un informe de incidencias (informe de errores)
316
Descripcin
Comentarios.
V Gestin de pruebas
06- Gestin de incidencias
Clase de error y prioridad del error
La severidad de un error se expresa por la asignacin de una clase de error.
V Gestin de pruebas
06- Gestin de incidencias
Estado de un error
318
V Gestin de pruebas
06- Gestin de incidencias
Estado de un error
Nuevo
Abierto
Rechazado
En
observacin
Inspeccin
Trabajo en
progresin
Repeticin
de
No resuelto
319
pruebas
Finalizado
V Gestin de pruebas
06- Gestin de incidencias
Estado de un error
320
V Gestin de pruebas
06- Gestin de incidencias
Anlisis de informes de errores
321
V Gestin de pruebas
06- Gestin de incidencias
Resumen
322
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Observaciones generales
Las herramientas de prueba pueden ser utilizadas para dar soporte a las
actividades de pruebas.
323
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Clasificacin de las herramientas de pruebas / 1
Las herramientas unitarias (single tools) dan soporte a una tarea particular,
son diseadas para una actividad de pruebas.
324
Durante las pruebas de sistema los objetos de prueba deben ser embebidos en un
entorno en tiempo real.
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas de gestin de pruebas y planificacin de pruebas / 2
325
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas para pruebas estticas: revisiones
326
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas para la gestin de pruebas / 2
327
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas para la especificacin de pruebas / 3
328
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas para la ejecucin de pruebas Drivers y stubs
Stubs
329
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas para la ejecucin de pruebas Simuladores
330
Son una replica del entorno de produccin (o parte del mismo) y son
necesarios cuando consideraciones de seguridad impiden el uso del
entorno de produccin objetivo (real).
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas para el anlisis de pruebas y anlisis del objeto de prueba
331
VI Herramientas de pruebas
01- Tipos de herramientas de pruebas
Herramientas para pruebas no funcionales
332
VI Herramientas de pruebas
02- Uso
333
VI Herramientas de pruebas
02- Uso efectivo de herramientas de pruebas
Riesgos de las herramientas en general
334
VI Herramientas de pruebas
02- Uso efectivo de herramientas de pruebas
Beneficios y riesgos de las herramientas de pruebas de rendimiento
335
VI Herramientas de pruebas
02- Uso efectivo de herramientas de pruebas
Beneficios y riesgos de otras herramientas de pruebas
336
VI Herramientas de pruebas
03 Introduccin de herramientas de pruebas
Ventajas de un proyecto piloto para la introduccin de una herramienta
337
VI Herramientas de pruebas
03 Introduccin de herramientas de pruebas
Factores de xito en el despliegue de software
338