Professional Documents
Culture Documents
Probador Certificado
Nivel Básico
Formación para el “Probador Certificado - Nivel Básico”
de acuerdo al programa de estudios del ISTQB
V1.1.0.c_ES
Octubre 2011
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
01 - Introducción
Página 2
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
02 - Contenido
- Capítulo 0 Generalidades
- Capítulo I Fundamentos de Pruebas
- Capítulo II Pruebas a través del Ciclo de Vida Software
- Capítulo III Técnicas Estáticas
- Capítulo IV Técnicas de Diseño de Pruebas
- Capítulo V Gestión de Pruebas
- Capítulo VI Herramientas de Pruebas
Página 3
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
02 - Contenido
Página 4
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
02 - Contenido
Página 5
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
02 - Contenido
Página 6
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
03 - Organizaciones Internacionales
Página 7
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
04 - Programas de estudio y examen
Página 8
Probador Certificado – Nivel Básico V1.1.0.c_ES
0 - Generalidades
05 – Formación
Página 9
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
Contenido
Página 10
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
Contenido
Página 11
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Calidad software
- Cada vez más, la calidad software se ha convertido en un
factor determinante del éxito de sistemas técnicos o
comerciales y productos
Página 12
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Fuente: Wikipedia.com
Página 13
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Fuente: Wikipedia.com
Página 14
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
- Condiciones ambientales
Cambios en las condiciones ambientales
Causas de condiciones ambientales negativas/adversas
Radiación, magnetismo, campos electromagnéticos, polución,
manchas solares, fallo de discos duros, fluctuaciones en el
suministro de energía eléctrica
Página 15
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
- Satisfacer compromisos:
La ejecución de pruebas puede ser un requisito obligatorio por
parte del cliente, debido a normas legales así como al
cumplimiento de estándares propios de una industria
Página 17
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
- La detección de errores
en etapas tempranas
permite la corrección de
los mismos a costes
reducidos
Source: B. Boehm (1981)
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Pruebas y la Calidad
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Pruebas y la Calidad
- De acuerdo a la norma ISO/IEC 9126 la calidad software
consiste en:
- Funcionalidad Atributos funcionales de calidad
- Fiabilidad
- Usabilidad
- Eficiencia Atributos no-funcionales de calidad
- Mantenibilidad
- Portabilidad
Página 20
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Guías Consigna
Estándares
Listas de comprobación
Reglas de proceso y normas - Los defectos
Requisitos legales evitados no
requieren ser
reparados
nói cazi na gr O
- Los defectos
introducidos en el
Métodos pasado no deben
Herramientas ser repetidos
ovi t c urt s no C A Q
Lenguajes
Listas / plantillas
Entorno de Desarrollo Integrado (IDE) - Prevenir defectos
ci ncé T
Página 21
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Consigna:
Partición de equivalencia
Análisis de valores límite
Pruebas de transición de estado - Los defectos deben ser
Tablas de decisión detectados tan pronto
Pruebas de casos de uso como sea posible
ar ge n aj ac
Página 22
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Página 23
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
- Fiabilidad (“reliability”):
- Madurez(“maturity”), tolerancia a defectos (“fault tolerance”),
recuperabilidad (“recoverability”), cumplimiento de fiabilidad
(“reliability compliance”)
- Características: En determinadas condiciones, el software /
sistema mantendrá su capacidad / funcionalidad a lo largo de un
período de tiempo
- Fiabilidad = Calidad / tiempo
- Usabilidad (“usability”):
- Comprensibilidad (“understandability”), aprendibilidad
(“learnability”), operabilidad (“operability”), atractivo
(“attractiveness”), cumplimiento de usabilidad(“usability
compliance”)
- Características : Fácil de usar, fácil de aprender, conforme a
normas, uso intuitivo
Página 24
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
- Mantenibilidad (“maintainability”):
- Analizabilidad (“analysability”), modificabilidad (“changeability”),
estabilidad (“stability”), testabilidad (testability”), cumplimiento de
mantenibilidad (“maintainability compliance”)
- Características: Medida del esfuerzo requerido para realizar
cambios en los componentes de un sistema
Página 25
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Página 26
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Atributos de la calidad
- Algunos atributos de la calidad de un producto software
se influyen mutuamente. Debido a esta interdependencia y en
función del objeto de prueba, los atributos deberán ser
caracterizados por una prioridad. Por ejemplo eficiencia versus
portabilidad
- Se realizarán distintos tipos de pruebas con el objeto de
medir distintos tipos de atributo
Página 27
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Página 28
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Página 29
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
- Depuración (“debugging”):
Localización y corrección de defectos en el código fuente
Página 31
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
- Requisito (“requirement”):
Un requisito describe un atributo funcional deseado o
considerado obligatorio
Página 32
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
01 - ¿Porqué son necesarias las pruebas?
Resumen:
- Los fallos del software pueden causar importantes daños
- La calidad del software es la suma de los atributos que se
refieren a la capacidad del software de satisfacer un conjunto
de requisitos dados
- El aseguramiento de la calidad constructivo se ocupa de la
prevención de defectos
- El aseguramiento de la calidad analítico se ocupa de la
detección y corrección de defectos
- Los atributos funcionales y no funcionales de la calidad
definen la calidad total del sistema
- Cada prueba debe contar con criterios de salida (“exit
criteria”). Al alcanzar los criterios de salida concluirán las
actividades de prueba.
- Los probadores (“testers”) buscan fallos en el sistema e
informan sobre los mismos (proceso de pruebas -
“testing”). Los desarrolladores buscan defectos y los
corrigen (depuración - “debugging”).
Página 33
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
Contenido
Página 34
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
02 - ¿Qué son las pruebas?
Página 35
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
02 - ¿Qué son las pruebas?
- Detección de defectos
Puede ser
- Pruebas de desarrollo (“development testing”): para causar tantos
fallos (“failures”) como sea posible
- Pruebas de aceptación (“acceptance testing”): para confirmar que
el sistema funciona como se espera
- Generación (logro) confianza respecto del nivel de
Calidad
- Aportación de información para la toma de decisiones
- Prevención de defectos
Página 36
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
02 - ¿Qué son las pruebas?
- Depuración (“debugging”):
Proceso de encontrar, analizar y eliminar las causas de los
fallos en el software
- Requisito (“requirement”):
Condición o capacidad necesaria para un usuario con el objeto
de solucionar un problema o lograr un objetivo que debe ser
alcanzado o poseído por un sistema o componente de un
sistema, para satisfacer un contrato, estándar, especificación
u otro documento impuesto formalmente. [Según IEEE 610]
- Revisión (“review”):
Evaluación de un producto o del estado de un proyecto para
detectar discrepancias con los resultados planificados y para
recomendar mejoras. Algunos ejemplos incluyen la revisión de
gestión, revisión informal, revisión técnica, inspección y
revisión guiada. [Según IEEE 1028]
Página 37
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
02 - ¿Qué son las pruebas?
Detección - Repetición de
Corrección de
Prueba identificación pruebas
de defectos defectos
(re-test)
I - Fundamentos de pruebas
02 - ¿Qué son las pruebas??
Resumen:
El proceso básico de prueba incluye
- Planificación y control
- Selección de condiciones de prueba
- Diseño y ejecución de casos de prueba
- Comprobación de resultados
- Generación de informes respecto del proceso de pruebas y el
sistema sujeto a pruebas
- Finalización y completar actividades de cierre
- Los objetivos de las pruebas pueden ser: la detección de
defectos, el nivel de calidad, la información para la toma de
decisiones, prevención de defectos
- El proceso mental y las actividades involucradas en el diseño
de prueba de forma temprana en el ciclo de vida
- Las pruebas dinámicas significan la ejecución del software,
las pruebas estáticas significan la revisión de documentos
- Las pruebas dinámicas muestran fallos que han sido causados
por defectos, la depuración detecta, analiza y elimina la causa
del fallo
Página 39
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
Contenido
Página 40
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
Página 41
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
Página 44
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
Página 47
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
03 - Siete principios del proceso de pruebas
Resumen:
Página 48
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
Contenido
Página 49
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Página 50
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Plan de pruebas
Control de pruebas
- Incluye superposición y Implementación de pruebas
y Ejecución de pruebas
vuelta atrás
(“backtracking”)
Evaluación del criterio de salida
y Generación de informes
- Cada fase del proceso de
pruebas tiene lugar de
forma concurrente con las Actividades de cierre de pruebas
fases del proceso de
desarrollo software
Página 51
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Control de pruebas
y Diseño de pruebas
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Análisis de pruebas
Control de pruebas
y Diseño de pruebas
pruebas
- Implementar el método de pruebas /
estrategia de pruebas, planificación del
período de tiempo para el desarrollo de las
actividades a seguir
- Adquirir/obtener y programar recursos
requeridos por las pruebas: personal,
entorno de pruebas, presupuesto de
pruebas Página 53
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Página 55
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
principales /1
Análisis de pruebas
- Revisar las bases de prueba (“test basis”) y Diseño de pruebas
Control de pruebas
(requisitos, arquitectura del sistema, Implementación de pruebas
diseño, interfaces). y Ejecución de pruebas
Página 56
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
principales /2
Análisis de pruebas
- Diseñar pruebas / casos de prueba y Diseño de pruebas
Control de pruebas
- Crear y priorizar casos de prueba de lógico Implementación de pruebas
/ alto nivel (casos de prueba sin datos de y Ejecución de pruebas
Página 57
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Control de pruebas
y Diseño de pruebas
environment”) [cama de prueba – (“test
bed”)] Implementación de pruebas
y Ejecución de pruebas
Página 58
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Control de pruebas
y Diseño de pruebas
de prueba (“test tools”), si fuera
necesario Implementación de pruebas
y Ejecución de pruebas
herramientas de prueba
- Crear trazabilidad bidireccional Actividades de cierre de pruebas
Página 59
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Página 60
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Página 61
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Implementación y ejecución de
Plan de pruebas
pruebas /1
- Finalizar, implementar y priorizar casos Análisis de pruebas
Control de pruebas
y Diseño de pruebas
de prueba
- Identificar datos de prueba Implementación de pruebas
y Ejecución de pruebas
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Implementación y ejecución de
Plan de pruebas
pruebas /2
- Verificar y actualizar la trazabilidad (bases Análisis de pruebas
Control de pruebas
y Diseño de pruebas
de prueba - casos de prueba)
- Ejecutar prueba (de forma manual o Implementación de pruebas
y Ejecución de pruebas
automática)
Evaluación del criterio de salida
- Seguir secuencia de prueba y Generación de informes
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Implementación y ejecución de
Plan de pruebas
pruebas /3
- Repetir actividades de prueba para Análisis de pruebas
Control de pruebas
y Diseño de pruebas
confirmar una corrección
- Repetición de prueba (“re-test”) [después Implementación de pruebas
y Ejecución de pruebas
de la corrección de un defecto]
Evaluación del criterio de salida
- Ejecutar prueba de regresión y Generación de informes
Página 64
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Página 65
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Página 66
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Control de pruebas
y Diseño de pruebas
respecto a objetivos definidos (por
ejemplo, criterios de salida) Implementación de pruebas
y Ejecución de pruebas
Página 67
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Control de pruebas
consolidar la experiencia, producto de soporte
de prueba ("testware"), hechos y números Implementación de pruebas
y Ejecución de pruebas
- Cerrar informes de incidencias o
generación de solicitudes de cambio para Evaluación del criterio de salida
cualquier punto que permaneciera abierto y Generación de informes
I - Fundamentos de pruebas
04 - Proceso de pruebas básico
Resumen:
El proceso de prueba se puede dividir en diferentes fases.
- Planificación de pruebas (“test planning”) abarca
actividades como la definición del enfoque de pruebas para
todas las fases así como la planificación de los recursos
(tiempo, personal, máquinas)
- Diseño de pruebas (especificación) abarca el diseño de
casos de prueba y sus resultados esperados
- Ejecución de pruebas abarca la definición de datos de
prueba, la ejecución de pruebas y la comparación de
resultados
- Evaluación de pruebas y generación de informes abarca
la evaluación del criterio de salida y el registro de los
resultados de pruebas en forma escrita
- Control de prueba consiste en el control de las actividades
que cubren todas las fases del proceso de pruebas
Página 69
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
Contenido
Página 70
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Roles y responsabilidades
Percepción
Percepción
Página 71
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Roles y responsabilidades
Rol: Desarrollador Rol: Probador (“Tester”)
-Implementa requisitos -Planifica las actividades de
-Desarrolla estructuras pruebas.
-Diseña y programa el software -Diseña casos de prueba
-Su éxito consiste en la -Su única preocupación es
creación de un producto encontrar defectos
-Encontrar errores producidos
por un desarrollador es su éxito
Percepción:
¡La actividad del desarrollador ¡La actividad del probador
es constructiva! (“tester”) es destructiva!
¡Error!
¡Las pruebas también constituyen una actividad
constructiva,
su propósito es la eliminación de defectos en un
producto!
Página 72
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Página 73
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Página 74
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Página 75
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Pruebas independientes
- La separación de las responsabilidades en el proceso de
pruebas apoya/promueve la evaluación independiente de los
resultados de las pruebas
Página 76
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Página 77
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Página 78
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Página 79
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Página 80
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Dificultades /1
- Incapacidad de comprensión mutua
- Los desarrolladores deberían contar con un conocimiento básico
de pruebas
- Los probadores (“testers”) deberían contar con un conocimiento
básico de desarrollo software
- Especialmente en situaciones de tensión, la detección de
errores cometidos por alguien frecuentemente conduce a
conflictos
- La forma de documentar los defectos y la forma en la cual el
defecto es descrito determinará cómo se desarrollará la situación
- Las personas no deberían ser criticadas, los defectos deben ser
descritos en términos objetivos
- La descripción de los defectos debería ayudar al desarrollador a
encontrar el error
- Los objetivos comunes siempre deben ser la cuestión principal
Página 81
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Dificultades /2
- La comunicación entre probadores (“testers”) y
desarrolladores es insuficiente o inexistente. Este hecho
puede hacer imposible el trabajo conjunto
- Los probadores (“testers”) son vistos únicamente como
“portadores de malas noticias”
- Mejora: intente ponerse en el lugar (rol) de la otra persona. ¿Mi
mensaje ha sido transmitido? ¿Me ha llegado la respuesta?
- Un proceso de pruebas sólido requiere la distancia apropiada
con respecto al objeto de prueba
- Se adquiere un punto de vista independiente e imparcial a través
de la distancia con respecto al desarrollo
- Sin embargo, una distancia muy grande con respecto al objeto de
prueba y el equipo de desarrollo conducirá a mayores esfuerzos y
tiempo para las pruebas
Página 82
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
05 - Psicología en el proceso de pruebas
Resumen
- Las personas cometen errores, toda implementación tiene
defectos
- La naturaleza humana dificulta la posibilidad de hacer frente a
los defectos propios (ceguera a los errores)
- Desarrollador y probador (“tester”) implican el encuentro de
dos mundos distintos
- El desarrollo es constructivo - algo que no estaba ahí
previamente es creado
- El proceso de pruebas resulta destructivo a primera vista - ¡Se
detectarán defectos!
- Juntos, el desarrollo y las pruebas son constructivas en su
objetivo de obtener un producto software con la menor cantidad
de defectos posible
- Las pruebas independientes aumentan la calidad del
proceso de pruebas:
En lugar de equipos de desarrolladores utilice equipos de
prueba (probadores – “testers”) o equipos con personal
externo para pruebas
Página 83
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
Contenido
Página 84
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
06 – Código ético
Código de conducta /1
Los individuos involucrados en el proceso de pruebas software
tienen acceso a información muy privilegiada y crítica. El
código de ética es necesario para asegurar que la información
es utilizada de forma apropiada.
- Público - Los probadores software certificados deben actuar
conforme con el interés de su cliente y empleador, conforme
con el interés público, especialmente en aquellos trabajos
relacionados con sistemas de seguridad crítica donde se le
podría solicitar la eliminación de un informe de defectos de
forma discreta, por ejemplo
- Cliente y empleador - Los probadores software certificados
deben actuar conforme con el interés de su cliente y
empleador, conforme con el interés público. Por ejemplo no
filtrando a Internet información interna o privada del cliente o
empleador.
Página 85
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
06 – Código ético
Código de conducta /2
- Producto - Los probadores software certificados asegurarán
que los entregables que suministran (sobre los productos y
sistemas que prueban) alcanzan los estándares profesionales
más altos. Significa que, trabajando como consultor no se
omitan detalles importantes al cliente
- Juicio - Los probadores software certificados mantendrán su
integridad e independencia en su juicio profesional. Tal vez un
jefe de proyecto solicitara que se ocultaran defectos de
importancia al promotor del proyecto (“business sponsor”), en
el caso de que el probador accediera a la petición resultaría en
un menoscabo a la independencia y un fallo ético
Página 86
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
06 – Código ético
Código de conducta /3
- Gestión - Los gestores de prueba software certificados y
responsables (“leaders”) suscribirán y promoverán un enfoque
ético a la gestión de las pruebas software. Favorecer a un
probador respecto a otro con el objeto de establecer una
relación de carácter amoroso podría ser una seria
contravención a la ética de la gestión
- Profesión - Los probadores software certificados promoverán
la integridad y reputación de la profesión consistente con el
interés público. Hacer público el efecto y formas en las que las
pruebas software son un beneficio para la sociedad
- Compañeros de profesión - Los probadores software serán
justos y solidarios con sus compañeros de profesión, y
promoverán la cooperación con los desarrolladores de
software
Página 87
Probador Certificado – Nivel Básico V1.1.0.c_ES
I - Fundamentos de pruebas
06 – Código ético
Código de conducta /4
- Individualmente – Los probadores software certificados
participarán en procesos de formación relacionados con
su práctica profesional de forma permanente y
promoverán un enfoque ético en la práctica de la
profesión. Una forma de mantener un alto nivel de
conocimiento podría ser atendiendo a cursos de
formación y leyendo libros
Página 88
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 89
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 90
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 91
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Documentos de especificación
- Diseño funcional del sistema
- Diseño del flujo funcional del programa Diseño Funcional del Sistema
Página 92
Probador Certificado – Nivel Básico V1.1.0.c_ES
cliente
- Pruebas de sistema Pruebas de
Sistema
- Interfaces de componentes
- Pruebas de componente
Pruebas de Componente
Programación
Página 93
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Verificación
- Comprobación de la conformidad con los requisitos establecidos
(definición según ISO 9000)
- Cuestión clave: ¿Se ha procedido correctamente en la
construcción del sistema?
- ¿Hemos sumado 1 más 1 correctamente?
- Validación
- Comprobación de la idoneidad para el uso esperado (definición
según ISO 9000)
- Cuestión clave: ¿Hemos construido el sistema software correcto?
- ¿El objetivo era sumar 1 más 1 o deberíamos haber restado?
Página 94
Probador Certificado – Nivel Básico V1.1.0.c_ES
Programación
VERIFICACIÓN
DESARROLLO
E INTEGRACIÓN
Página 95
Probador Certificado – Nivel Básico V1.1.0.c_ES
Programación
VERIFICACIÓN
DESARROLLO
E INTEGRACIÓN
VALIDACIÓN
Página 96
Probador Certificado – Nivel Básico V1.1.0.c_ES
Pruebas en el modelo-W
Programación
Página 97
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 99
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 100
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 101
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 102
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 103
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 104
Probador Certificado – Nivel Básico V1.1.0.c_ES
Definición
en Pascal)
- Los componentes son referidos como módulos,
clases o unidades. Dado que los
Pruebas de Integración
Página 105
Probador Certificado – Nivel Básico V1.1.0.c_ES
Pruebas de componente
- Bases de prueba
- Requisitos de componente
- Diseño detallado
- Código
- Objetos de prueba típicos
- Componentes / clases / unidades / módulos
- Programas
- Conversión de datos / migración de programas Pruebas de Aceptación
Pruebas de Integración
Pruebas de Componente
Programación
Página 106
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 107
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Probar la funcionalidad
- Toda funcionalidad debe ser probada, por lo menos, con un caso
de prueba
- Las funciones: ¿Se realizan correctamente?
- ¿Se cumplen todas las especificaciones?
- Defectos detectados normalmente:
- Defectos en el procesamiento de datos, normalmente en el
entorno de los valores límite (“boundary values”)
- Funciones ausentes (“missing functions”)
Página 108
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 109
Probador Certificado – Nivel Básico V1.1.0.c_ES
controlador de prueba
- La ejecución de pruebas de componente
requiere frecuentemente controladores
(“drivers”) y stubs
- Un controlador (“driver”) gestiona/trata la
interfaz de un componente componente
- Los controladores (“drivers”) simulan datos de
entrada, registran datos de salida y aportan un
arnés de pruebas (“test harness”)
- Los controladores (“drivers”) utilizan herramientas
de programación
- Un stub reemplaza o simula un componente que stub
aún no se encuentra disponible o que no es
parte del objeto de prueba (“test object”)
- Para programar controladores y/o stubs:
- Se debe contar con conocimientos de
programación
- Se necesita disponer del código fuente
- Podrán ser necesarias herramientas especiales
Página 110
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 111
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 112
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Infraestructura
- Interfaces Pruebas de Sistema
Pruebas de Componente
Programación
Página 113
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 114
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 115
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 116
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 117
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 118
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 120
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Integración ad-hoc
- Los componentes serán probados, si fuera posible,
inmediatamente después de haber sido finalizada su construcción
y se hayan finalizado las pruebas de componente
- Características de la integración ad-hoc.
- Inicio temprano de las actividades de prueba, dando lugar a un
proceso de desarrollo software más corto en términos globales
- Controladores (“drivers”) y stubs serán necesarios dependiendo
del tipo de componentes finalizados
- Uso de la integración ad-hoc
- Es una estrategia que puede ser aplicada en cualquier etapa del
proyecto
- Es una estrategia que, normalmente, se aplica combinada con
otras
Página 121
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 122
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Bases de prueba
- Especificación de requisitos software y de sistema
- Casos de uso
- Especificación funcional
- Informes de análisis de riesgos (“risk analysis reports”)
- Manuales de sistema, usuario y operaciones
- Configuración del sistema Pruebas de Aceptación
Pruebas de Integración
Pruebas de Componente
Programación
Página 123
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Casos de uso
- Procesos de negocio
- Evaluación de riesgos Pruebas de Componente
Programación
Página 124
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 125
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 126
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 127
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 129
Probador Certificado – Nivel Básico V1.1.0.c_ES
Pruebas de aceptación
- Bases de prueba
- Requisitos de usuario
- Requisitos de sistema
- Casos de uso
- Procesos de negocio
- Informes de análisis de riesgo
- Objetos de prueba típicos
- Procesos de negocio en sistemas completamente integrados Pruebas de Aceptación
- Formularios
- Informes Pruebas de Integración
- Datos de configuración
Pruebas de Componente
Programación
Página 130
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 132
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 134
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 135
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Niveles de prueba
- En la sección previa se han explicado los distintos niveles de
pruebas, es decir pruebas de componente, pruebas de integración,
etc.
- !En cada nivel de prueba los objetivos de las pruebas tienen un
foco diferente¡
- Por lo tanto, se aplican distintos tipos de pruebas durante los
distintos niveles de pruebas
- Tipos de pruebas
Pruebas de Aceptación
después de cambios)
Programación
Página 136
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 137
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 138
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 139
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 140
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 141
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 142
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Áreas de aplicación
- Repetir una prueba de funcionalidad que ha sido verificada
previamente se denomina prueba de regresión
- El alcance de la prueba de regresión depende del riesgo
que la nueva implementación de la funcionalidad
(extensión o corrección de errores) impone al sistema
- El análisis del riesgo se puede realizar con un análisis de
impacto
- Las pruebas de confirmación/regresión pueden ser
realizadas en todos los niveles de prueba
- Las pruebas típicas después de un cambio:
- Repetición de prueba (“re-testing”) [= pruebas tras la
corrección de errores]
- Pruebas de regresión (“regression testing”) [= pruebas para
revelar / descubrir nuevos defectos introducidos
recientemente]
Página 143
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 144
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 146
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Configuración
- Composición de un componente o de un sistema definido como el
número, naturaleza e interconexiones de las partes que lo
constituyen
- Análisis de impacto
- Valoración del cambio en las capas de documentación de
desarrollo, documentación de pruebas y componentes, con el
objeto de implementar un cambio dado en requisitos especificados
- Pruebas de mantenimiento
- Pruebas de los cambios en un sistema en operación o el impacto
de un entorno modificado para un sistema en operación
Página 148
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 150
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 151
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 152
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 153
Probador Certificado – Nivel Básico V1.1.0.c_ES
Enfoque básico
- Mantenibilidad insuficiente
-
Especificación de Componentes
programación) DESARROLLO
E INTEGRACIÓN
Programación
Página 155
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Ventajas
- Costes más bajos y un alto potencial de ahorro
- Los defectos en la documentación son detectados y corregidos
de forma temprana
- Los documentos de alta calidad mejoran el proceso de
desarrollo
- Mejora el índice de comunicación / intercambio de conocimiento
(“know-how”)
- Desventajas
- Se podrían presentar situaciones de tensión en el caso de
enfrentamientos directos con el autor
- Los expertos involucrados en las revisiones deben adquirir
conocimientos específicos del producto, es necesaria una buena
preparación
- Inversión considerable de tiempo (del 10% - 15% del presupuesto
total)
- Moderador y participantes influyen directamente en la calidad
de la revisión
Página 156
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 157
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 158
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 159
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 160
Probador Certificado – Nivel Básico V1.1.0.c_ES
Roles y responsabilidades /1
- Jefe de proyecto (“manager”)
- Inicia la revisión, decide respecto de los participante
- Asigna tiempo en el calendario del proyecto
- Determina si se han alcanzado los objetivos de la revisión
- Moderador (“moderator”)
- Dirige la reunión / la discusión, hace de mediador, concluye
resultados
- Planificación de la revisión / ejecución de la revisión / seguimiento
posterior
- Sobre quien recae la responsabilidad del éxito de la revisión
- Autor (“author”)
- Redactor o responsable jefe del objeto de la revisión
- Expone su trabajo a la crítica, lleva a cabo los cambios
recomendados
Página 161
Probador Certificado – Nivel Básico V1.1.0.c_ES
Roles y responsabilidades /2
- Revisor ("reviewer") [también inspectores (“inspectors”) o
comprobadores (“checkers”)]
- Individuos con un bagaje técnico o de negocio específicos
- Detecta defectos, desviaciones, áreas problemáticas, etc.
- Ellos representan diferentes perspectivas y roles en el proceso de
revisión
- Deberían tomar parte en cualquier reunión de revisión
- Escriba (“scribe”)
- Documenta todos los asuntos, problemas y puntos que hubieran
sido identificados
- Los protocolos serán preparados de forma conjunta con un
proyector tal vez en el caso de revisiones importantes.
Posteriormente se contará con un protocolo verificado
Las revisiones observan los productos software o productos
resultado del trabajo desde distintos puntos de vista. Las listas
de comprobación pueden hacer las revisiones más eficientes.
Una lista de comprobación con los problemas típicos puede
ayudar a descubrir anomalías no detectadas previamente
Página 162
Probador Certificado – Nivel Básico V1.1.0.c_ES
Roles y responsabilidades /3
- Lista de comprobación (“checklist”) - Ejemplo (depende
del objeto de revisión)
- Identificar la audiencia objetivo
- Crear un logo para el software
- Crear un sitio Web para promocionar el software
- Definir requisitos mínimos del sistema
- Optimizar el sitio Web para motores de búsqueda (SEO)
- Configurar el Orden de las Páginas en el sitio Web
- Crear una lista de beneficios clave (“key benefits list”)
- Los términos son correctos y únicos
- Los requisitos están completos y son únicos
- Los comentarios están “hablando” y en el lenguaje esperado
- Todas las variables del código comienzan con una “V”
- Todas las constantes del código serán nombradas en Mayúsculas
- Las interfaces son consistentes y con las mismas métricas
- …
Página 163
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 164
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 165
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 166
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 168
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 169
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 170
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 171
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 172
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 173
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 174
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 175
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 176
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 177
Probador Certificado – Nivel Básico V1.1.0.c_ES
Terminología y definiciones
Página 178
Probador Certificado – Nivel Básico V1.1.0.c_ES
Aspectos generales /1
Aspectos generales /2
Página 180
Probador Certificado – Nivel Básico V1.1.0.c_ES
Aspectos generales /3
Página 181
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Propósito
- Detectar defectos causados por un desarrollo anómalo del código
(ramas muertas, código muerto, etc.)
- Método
- La estructura del código 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 en
decisiones y bucles
- Construcción mediante herramientas
Página 182
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Resultados
- Visión del conjunto del código del programa comprensible
- Las anomalías* pueden ser detectadas fácilmente, los
defectos se hacen evidentes
- Bucles abandonados por saltos
- Ramas muertas
- Retornos múltiples
- Un grafo de un flujo de control es una versión simplificada de
un diagrama de flujo
Página 183
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Propósito
- Detección de anomalías 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
- Detección fiable de anomalías en el flujo de datos
- Se puede detectar fácilmente la localización exacta de defectos
- Es un buen complemento para otros métodos de pruebas
- Desventajas
- Limitado a un rango reducido de tipos de defectos
Página 184
Probador Certificado – Nivel Básico V1.1.0.c_ES
Para este ejemplo, los valores El análisis del flujo de datos muestra: Este ejemplo puede ser
de dos variables son fácilmente corregido:
intercambiados a través de - La Variable Help se encuentra indefinida
una variable auxiliar, si no (undefined) cuando es referenciada
(“referenced”:
están ordenados por valor. anomalía-ur.
void MinMax (int Min, int Max) - La variable Max se define (“defined”) dos
void MinMax (int Min, int Max)
{ veces sin ninguna referencia entre ambas {
int Help; definiciones: anomalía-dd. int Help;
if (Min>Max) if (Min>Max)
{ - El valor definido (“defined”) para la variable {
Help se vuelve indefinido (undefined) final del
Max = Help; programa sin referencia: anomalía-du. Help = Max;
Max = Min; Max = Min;
Help = Min; Min = Help;
} }
End MinMax; End MinMax;
Página 186
Probador Certificado – Nivel Básico V1.1.0.c_ES
v(G ) = e − n + 2 p
- Número ciclomático v(G)
- Métrica que mide la complejidad estática de un
programa basada en su grafo de flujo de control
- Mide los caminos linealmente independientes, como índice
de la testabilidad y mantenibilidad
- El número ciclomático se define de la siguiente forma:
- Número de aristas: e
- Número de nodos: n
- Número de partes del programa independientes
inspeccionadas: p (normalmente 1).
- Valores hasta 10 son aceptables. Para valores superiores el
código debe ser reconstruido (“reworked”)/mejorado (buena
práctica, McCabe)
Página 188
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 189
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 190
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
- Análisis estático
- Con el uso de herramientas para la realización de análisis estático
(compiladores, analizadores) el código del programa puede ser
objeto de inspección sin ser ejecutado
- Con el uso de herramientas se puede realizar el análisis
estático de un programa con menor esfuerzo que el necesario
para una inspección
- Resultado del análisis
- El diagrama de flujo de control presenta el flujo del programa y
permite la detección de “ramas muertas” y código inalcanzable
- Las anomalías en los datos se detectan utilizando el análisis del
flujo de datos
- Las métricas pueden ser utilizadas para evaluar la complejidad
estructural conduciendo a una estimación del esfuerzo esperado
en pruebas
Página 191
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 192
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 193
Probador Certificado – Nivel Básico V1.1.0.c_ES
caso de
caso de
prueba
objeto de caso de
prueba
definición de caso de
pruebas prueba 4
requisitos prueba
caso de
y requisitos de las prueba
caso de
sobre el pruebas
objeto y criterios prueba
caso de caso de
de pruebas de prueba prueba caso de
prueba
caso de caso de
prueba
prueba 1 prueba 1
Página 194
Probador Certificado – Nivel Básico V1.1.0.c_ES
Trazabilidad
Las pruebas deben ser trazables: ¿Qué casos de prueba han sido
incluidos en el catálogo de pruebas, basados en qué
requisitos?
Las consecuencias de los cambios en los requisitos sobre las
pruebas a realizar pueden ser identificadas directamente
La trazabilidad también ayuda a determinar la cobertura
escenario dede
pruebas
requisitos
caso de
prueba
caso de
objeto de prueba
caso de
definición de caso de
pruebas prueba 4
requisitos prueba
caso de
y requisitos de las prueba
sobre el pruebas caso de
objeto y criterios prueba
caso de caso de
de pruebas de prueba prueba prueba
caso de
caso de prueba
caso de
prueba 1 prueba 1
Página 195
Probador Certificado – Nivel Básico V1.1.0.c_ES
Definiciones
Página 198
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 199
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 200
Probador Certificado – Nivel Básico V1.1.0.c_ES
ar ge n aj ac
• Algoritmo dual (“pairwise”)
obtener los casos de prueba
técnicas basadas en la experiencia
caja Box
Black negra caja blanca
White Box • Cobertura de sentencia
• Cobertura de rama
oci má ni d
• Cobertura de condición
• Cobertura de camino
• Revisiones / Revisiones guiadas
diseñar casos de prueba (“walkthroughs”)
• Análisis del flujo de control
mar uges A
Página 201
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 202
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 205
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 206
Probador Certificado – Nivel Básico V1.1.0.c_ES
Visión general
- En el presente apartado se explicarán en detalle los siguientes
métodos de caja negra:
- Partición equivalente (segmentación de equivalencia) o clase de
equivalencia
- Análisis de valores límite
- Tablas de decisión & gráficos causa-y-efecto
- Pruebas de transición de estado
- Pruebas de caso de uso
- La lista anterior da cuenta de los métodos más importantes y
conocidos
- Otros métodos de caja negra son:
- Pruebas estadísticas
- Pruebas duales (algoritmo dual - “pairwise”)
- Pruebas de humo
Página 207
Probador Certificado – Nivel Básico V1.1.0.c_ES
General
- Las pruebas funcionales están dirigidas a verificar la
corrección y la completitud de una función
- ¿Están disponibles en el módulo todas las funciones
especificadas?
- ¿Las funciones ejecutadas presentan resultados correctos?
- La ejecución de casos de prueba deberían ser ejecutados con
una baja redundancia, pero sin embargo con carácter
integral / completo
- Probar lo menos posible, pero
- Probar tanto como sea necesario
Página 208
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 209
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 210
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 211
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 212
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 213
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 215
Probador Certificado – Nivel Básico V1.1.0.c_ES
10 minutos de
trabajo
individual 15 minutos de
discusión de
resultados
Página 216
Probador Certificado – Nivel Básico V1.1.0.c_ES
EC32: x = 9 válido 9
EC33: x = 12 válido 12
Página 218
Probador Certificado – Nivel Básico V1.1.0.c_ES
EC33: x = 12 válido 12
Página 219
Probador Certificado – Nivel Básico V1.1.0.c_ES
Variable Estado Representante T01 T02 T03 T04 T05 T06 T07 T08 T09 T10
Precio de válido 1000,00
venta al no válido -1000,00
público
no válido fred
Descuento válido 10%
no válido -10%
no válido 200%
no válido fred
Precio del válido 6
porte válido 9
válido 12
no válido 4
no válido fred
Página 220
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 221
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 222
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 223
Probador Certificado – Nivel Básico V1.1.0.c_ES
Número de CE probados
Cobertura (CE) = * 100 %
Número de CE definidos
Página 224
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 225
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Beneficios
- Método sistemático para el diseño de casos de prueba, es decir,
con una mínima cantidad de casos de prueba se puede
esperar un valor de cobertura específico
- La partición del rango del valores en clases de equivalencia a
partir de las especificaciones cubre los requisitos funcionales
- La asignación de prioridades a la clases de equivalencia puede ser
utilizada para la asignación de prioridades a los casos de prueba
(los valores de entrada utilizados con poca frecuencia deben ser
los últimos en ser probados)
- Las pruebas de las excepciones conocidas está cubierta por los
casos de prueba de acuerdo con las clases de equivalencia
negativas
- La partición de equivalencia es aplicable a todos los niveles de
prueba
Página 226
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Beneficios
- Puede ser utilizada para lograr objetivos de cobertura de entradas
y salidas
- Puede ser utilizada para entradas manuales (humanas) o vía
interfaces de un sistema o parámetros de interfaces en pruebas de
integración
Página 227
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 229
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 230
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 231
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Nota importante:
- En lugar de un representante para la CE válida, ahora hay seis
representantes (cuatro válidos y dos no válidos)
Página 232
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 234
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Y (“and”)
- (Si causa A y B - entonces efecto E) A
^ E
B
Página 235
Probador Certificado – Nivel Básico V1.1.0.c_ES
A
- Inclusivo (“inclusive”) (PorI lo menos una de las dos causas: A or B)
B
A
O
- B una de las dos causas: A or B)
Uno y sólo uno (Una y exactamente
A
- R
Requerido (“required”) (Si causa BA entonces también causa B)
Página 236
Probador Certificado – Nivel Básico V1.1.0.c_ES
~ V
Denegar transferencia
TAN válido
Página 237
Probador Certificado – Nivel Básico V1.1.0.c_ES
Denegar transferencia NO SI SI NO
Solicitar TAN nuevamente NO NO NO SI
Página 241
Probador Certificado – Nivel Básico V1.1.0.c_ES
Pruebas de transición de
estado /2 muerto muerto
Página 242
Probador Certificado – Nivel Básico V1.1.0.c_ES
S M
o
N
Página 243
N
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 245
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 246
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 247
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 248
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Beneficios
- Pruebas apropiadas para pruebas de aceptación y pruebas de
sistema, dado que cada caso de uso describe un escenario de
usuario a probar
- Útil para diseñar pruebas de aceptación con la participación del
cliente/usuario
- Pruebas apropiadas si las especificaciones del sistema se
encuentran disponibles en UML
- Puede ser combinada con otras técnicas de prueba basadas en la
especificación
- Desventajas
- Nula obtención de casos de prueba adicionales más allá de la
información aportada por el caso de uso
- Por lo tanto este método debería ser utilizado sólo en
combinación con otros métodos de diseño sistemático de
casos de prueba
Página 249
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 250
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 251
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 252
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 253
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 254
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 255
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 257
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 258
Probador Certificado – Nivel Básico V1.1.0.c_ES
if (i > 0) {
j = f(i);
if (j > 10) {
for (k=i; k > 10; k --) {
...
}
}
}
Página 260
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Ejemplo IV/02-2
- En este ejemplo el gráfico (“diagrama”) es
ligeramente más complejo:
- El programa contiene las sentencias “if” y un bucle
(dentro de una sentencia “if”)
- Cuatro caminos diferentes conducen a través de
este segmento de programa
- La primera sentencia “if ” permite dos direcciones
- En cada rama de la sentencia “if” otra sentencia “if”
permite nuevamente dos direcciones diferentes
- Para una cobertura de sentencia del 100% hacen falta
cuatro casos de prueba
Página 262
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 263
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 265
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 267
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 268
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 269
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 270
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 271
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 272
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 274
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 275
Probador Certificado – Nivel Básico V1.1.0.c_ES
- Ejemplo IV/02-5:
Página 276
Probador Certificado – Nivel Básico V1.1.0.c_ES
Ejemplo IV/02-6:
Página 277
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 278
Probador Certificado – Nivel Básico V1.1.0.c_ES
10 minutos de
trabajo
individual 15 minutos de
discusión de
resultados
Página 279
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
- Los métodos de caja blanca y caja negra son métodos
dinámicos, el objeto de prueba es ejecutado durante las
pruebas
- El método de caja blanca (white-box) comprende:
- Cobertura de sentencia (“statement coverage”)
- Cobertura de decisión (“decision coverage”)
- Cobertura de camino (“path coverage”)
- Cobertuar de condición (“condition coverage”) [simple
(“single”), múltiple (“multiple”), mínimo múltiple (“minimum
multiple”)]
- Sólo se puede probar código existente. Habiendo funciones
faltantes, este hecho no puede ser detectado. Sin embargo el
código muerto o superfluo puede ser detectado con las
pruebas de caja blanca
- Principalmente, los métodos de caja blanca son utilizados en
pruebas de bajo nivel como pruebas de componente o
pruebas de integración
- Los métodos difieren en la intensidad de las pruebas
(profundidad de la prueba)
- Dependiendo del método, el número de casos de prueba es
distinto Página 280
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 281
Probador Certificado – Nivel Básico V1.1.0.c_ES
Definición de técnicas
basadas en la
experiencia • Partición de equivalencia
- Práctica para la creación de (segmentación de equivalencia)
• Análisis de valores límite
casos de prueba sin un claro • Pruebas de transición de estado
•
enfoque metodológico, basada Tablas de decisión
ar ge n aj ac
• Algoritmo dual (“pairwise”)
en la intuición y experiencia
del probador técnicas basadas en la experiencia
• Cobertura de sentencia
- Los casos de prueba están • Cobertura de rama
oci má ni d
• Cobertura de condición
basados en la intuición y • Cobertura de camino
experiencia
ac nal b aj ac
- ¿Dónde se han acumulado
errores en el pasado? •
Revisiones / Revisiones guiadas
- ¿Dónde falla normalmente el (“walkthroughs”)
• Análisis del flujo de control
software?
nei mar uges A
Página 282
Probador Certificado – Nivel Básico V1.1.0.c_ES
Fundamentos
- Las pruebas basadas en la experiencia también se denominan
pruebas intuitivas (“intuitive testing ”) e incluyen:
predicción de errores (“error guessing”) (pruebas orientadas a
puntos débiles) y pruebas exploratorias (pruebas iterativas
basadas en el conocimiento adquirido respecto del sistema)
- Principalmente aplicadas con el objeto de complementar
otros casos de prueba generados con un mayor
formalismo
- No cumple los criterios de un proceso de pruebas sistemático
- Frecuentemente produce casos de prueba adicionales que
no podrían ser creados con otras prácticas, por ejemplo:
- Pruebas de un año bisiesto posterior al año 2060
(Problemas conocidos del pasado
- Conjuntos vacíos en valores de entrada
(Una aplicación similar ha tenido errores en estas circunstancias)
Página 283
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 284
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 285
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 286
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 287
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 289
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 290
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 291
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 293
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 294
Probador Certificado – Nivel Básico V1.1.0.c_ES
Página 295
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
Página 296
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
Contenido
Página 297
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
Contenido
Página 298
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
V – Gestión de pruebas
01 - Organización de prueba
Ventajas
- Imparcialidad, no hay vinculación personal con el objeto de
prueba.
- Se pueden cuestionar hechos respecto de la base de prueba
(“test basis”) y verificar las suposiciones hechas durante al
diseño de pruebas
Desventajas
- Aumenta el esfuerzo dedicado a la comunicación,
presentación de conflictos del tipo “tener la última palabra”
en…
- Los desarrolladores pierden el sentido de la responsabilidad
Página 300
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 301
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 302
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 303
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 304
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 305
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 306
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 307
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 308
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Página 309
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Jefe de pruebas
Especificación de
Planificación Ejecución Evaluación y control
casos de prueba
Actividades de
Diseño de casos Evaluación de
infraestructura Ejecución de pruebas
de prueba pruebas
de pruebas
Equipo de Equipo de
Equipo de pruebas Equipo de pruebas
pruebas funcionales pruebas funcionales
V – Gestión de pruebas
01 - Organización de prueba
V – Gestión de pruebas
01 - Organización de prueba
Página 312
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
V – Gestión de pruebas
01 - Organización de prueba
comprendidos
Control de pruebas
y Diseño de pruebas
en cuenta
Evaluación del criterio de salida
- A lo largo del proyecto pueden ocurrir retrasos y Generación de informes
Página 315
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
planificación (plazos)
- En este caso, los casos de prueba planificados
tienen que ser “filtrados” (“scraped”) con el
objeto de cumplir con los hitos. Esta es, con
mucha frecuencia, la primera medida tomada
cuando los plazos se reducen
Página 316
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
pruebas anteriores
Análisis de pruebas
- Los resultados (de las pruebas en curso) de las
Control de pruebas
y Diseño de pruebas
por ejemplo, dependiendo del número de errores Evaluación del criterio de salida
y Generación de informes
detectados en el primer ciclo de pruebas, el
segundo ciclo de pruebas puede variar su Actividades de cierre de pruebas
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
- Los casos de prueba están constituidos por Evaluación del criterio de salida
- ¡Los casos de prueba deberían ser obtenidos con Actividades de cierre de pruebas
la colaboración de personal que cuente con
conocimiento de los requisitos funcionales
del software!
- Los casos de prueba deberían ser diseñados
teniendo en mente su carácter repetitivo
Página 318
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
- Ajuste de fechas para las pruebas planificadas
Implementación de pruebas
- Ajuste de recursos para la ejecución de pruebas y Ejecución de pruebas
- Ejecutar ciclos de pruebas adicionales / omitir ciclos de Evaluación del criterio de salida
Página 319
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
Página 321
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
*Nota: El término probador de utiliza de forma genérica y puede incluir varios roles
aparte del de jefe o líder de proyecto
Página 322
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
- Asiste en la implementación de la
planificación de las actividades de pruebas
- Revisa y comprueba planes de prueba
- Analiza y evalúa bases de pruebas Plan de pruebas
Control de pruebas
y Diseño de pruebas
- Desarrolla especificaciones de pruebas
Implementación de pruebas
- Formula y selecciona casos de prueba y y Ejecución de pruebas
Página 323
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Análisis de pruebas
Control de pruebas
y Diseño de pruebas
Implementación de pruebas
y Ejecución de pruebas
Página 324
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Control de pruebas
y Diseño de pruebas
processing”)
- Creación de protocolo de pruebas Implementación de pruebas
y Ejecución de pruebas
Página 325
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
01 - Organización de prueba
Resumen
- La efectividad en la detección de defectos se incrementa con
la independencia del equipo de pruebas. La independencia
se presenta en distintos grados
- El jefe de pruebas establece el equipo de pruebas en una
fase temprana y:
- Planifica todas las pruebas
- Establece/crea un enfoque de prueba
- Organiza la gestión de desviaciones
- Organiza la gestión de la configuración de los productos de
soporte de pruebas (“testware”)
- Controla la ejecución de pruebas
- Evalúa los resultados de las pruebas
- El jefe de pruebas informa a la dirección de la compañía y
al jefe de proyecto
- El probador apoya las actividades de preparación de
pruebas, ejecuta pruebas, crea la documentación relativa a
mensajes de desviación y resultados de pruebas. También
asiste en la implementación de la automatización de pruebas
Página 326
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
Contenido
Página 327
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Actividades de planificación de
pruebas
- La planificación de pruebas es
planificación de proyectos
- Todas las tareas y actividades deben ser
planificadas con antelación
Plan de pruebas
- Para las distintas tareas definidas se deben
asignar recursos (personal, presupuesto, Análisis de pruebas
herramientas, entornos de prueba, etc.)
Control de pruebas
y Diseño de pruebas
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 329
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 331
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Actividades a realizar
Página 332
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 333
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 334
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Criterios de entrada
Página 336
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 337
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 338
Probador Certificado – Nivel Básico V1.1.0.c_ES
r
- Un grado creciente de la calidad representa
erro
un coste más bajo del error, pero costes
de
más altos en prevención de errores Coste
i ón
míni
- Inicialmente, el coste de la revisión se mo
Co
enc
incrementa, a continuación se reduce (se st de la
e
hacen menos revisiones en fases finales del
rev
to calid
ta
proyecto) ld
la p
e ad
la
- Inicialmente, el coste total de la calidad se Co ca
Costes
de
st lid
reduce, a continuación se incrementa - los e ad
tes
de
costes de la calidad son los más bajos l
Cos
er
donde la curva presenta su mínimo or r
- Frecuentemente es necesario aportar un nes
mínimo de calidad con el objeto de poder re visio
e de
mantenerse en el negocio, esto significa: Cost
- Las pruebas deben continuar a pesar de que Grado de calidad
el aumento del coste de la prevención de
errores se incrementa más que el Fuente: Datos cualitativos de unos 20
decremento de costo del error Proyectos de Díaz & Hilterscheid
Página 339
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 340
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 341
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Otros enfoques/estrategias:
- Enfoque de reutilización (“reuse approach”): uso de
juegos de pruebas y pruebas de proyectos previos con el
objeto de realizar avance rápidos
- Enfoque centrado en fallo (“failure focused approach”):
predicción de errores (“error guessing”), ataques de faltas
(“fault attacks”)
- Enfoque basado en listas de comprobación (“check list
based approach”): uso de listas de comprobación de
proyectos previos o de la planificación de pruebas
- Enfoque basada en consultoría (“consultative based
approach”): expertos y tecnología externos guían al proceso
de pruebas
Página 342
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Otros enfoques/estrategias:
- Enfoque conforme a proceso o estándar (“process-or
standard-compliant approach”): estrategia regida por
estándares de desarrollo software, por ejemplo métodos
ágiles, estándares industriales
- Enfoque basado en modelo (“model based approach”):
pruebas estocásticas basadas en información estadística de
tasas de fallos, etc.
Se pueden definir más enfoques. En la práctica se combinan
varios enfoques
Página 343
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 344
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Estimación experta /1
- Método
- Identificar todas las tareas a ejecutar (normalmente utilizando
un enfoque descendente (“top down”))
- Obtener estimaciones para cada tarea por los responsables (de
su ejecución) o por expertos
- Sumar todos los valores de las tareas. Incluir los factores de
corrección (si hay experiencias respecto de la exactitud de
ciertos estimadores)
- Incluir elementos amortiguadores (buffers) / elementos
adicionales con el objeto de cubrir tareas omitidas o
subestimadas
Página 345
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Estimación experta /2
- Ventajas
- Las actividades de estimación pueden estar estrechamente
vinculadas a la planificación del proyecto
- La estimación da origen a una información detallada que puede
ser controlada y ajustada a lo largo del ciclo de vida del proyecto
- Las tareas pueden ser asignadas a grupos (por ejemplo
pequeño, mediano, grande) y los esfuerzos sólo son estimados
para unos pocos representantes del grupo
- Desventajas
- Este método es extensivo y caro
- Este método requiere un idea clara respecto de la estrategia de
pruebas y actividades de pruebas en una fase temprana del
proyecto
- La experiencia demuestra que las estimaciones son, en la mayoría
de los casos, a la baja. Esto podría deberse a la omisión o
subestimación grosera de ciertas tareas
- Los elementos amortiguadores incorporados son recortados
durante la planificación del proyecto
- Los errores relativos a la planificación de proyecto son
heredados
Página 346
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
- Método
- Clasificar las tareas de pruebas requeridas
- Buscar un proyecto que se haya desarrollado en el pasado que
contenga una tarea similar a una específica
- Utilizar el esfuerzo real de esta tarea como base para la
estimación
- A través del uso de métricas (líneas de código, número de
módulos, número de casos de prueba, etc.) como base, calcular el
valor de la estimación total
- Considerar factores de corrección
Página 347
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
- Ventajas
- El método es simple y efectivo
- Se pueden lograr valores muy precisos para la estimación si se
cuenta con suficiente experiencia
- Desventajas
- Se requiere personal con experiencia (estimadores) y/o base
de datos detallada respecto del proyecto actual para las tareas
a estimar
- Los criterios para la clasificación de proyectos pueden no cubrir
todos los aspectos de un proyecto
- Frecuentemente conduce a debates con la dirección respecto de la
validez de la estimación
Página 348
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Página 349
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
V – Gestión de pruebas
02 - Planificación y estimación del proceso de
prueba
Resumen
Página 351
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
Contenido
Página 352
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
03 - Seguimiento y control del estado de las
pruebas
Control de pruebas
Implementación de pruebas
y Ejecución de pruebas
Página 353
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
03 - Seguimiento y control del estado de las
pruebas
Página 354
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
03 - Seguimiento y control del estado de las
pruebas
Página 355
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
03 - Seguimiento y control del estado de las
pruebas
Página 356
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
03 - Seguimiento y control del estado de las
pruebas
Control de pruebas
Página 357
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
03 - Seguimiento y control del estado de las
pruebas
Página 358
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
03 - Seguimiento y control del estado de las
pruebas
Resumen
Página 359
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
Contenido
Página 360
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
04 - Gestión de la configuración
Objetivo
V – Gestión de pruebas
04 - Gestión de la configuración
Observaciones generales
Página 362
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
04 - Gestión de la configuración
Definiciones
Gestión de la configuración GC [“configuration
management (CM)”] se refiere a un conjunto de medidas
que complementan al desarrollo software:
- Gestión del cambio (“change management”) sigue todas
las actividades, por ejemplo cambios en el código fuente para
cada solicitud de cambio
- Gestión de la construcción (“build management”)
describe todos los pasos para crear una versión de un
producto software con el objeto de ser suministrado como un
todo o subsistemas individuales
- Gestión de entregas (“release management “) permite la
definición de versiones aisladas para cada artefacto
componente de una versión completa de un producto a ser
probado, entregado, etc.
- Gestión de versiones (“versions management ”) (como
parte de GC) registra toda la información de acceso para cada
artefacto: versión actual (número), último cambio, último
usuario, etc.
Página 363
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
04 - Gestión de la configuración
Página 364
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
04 - Gestión de la configuración
Página 365
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
04 - Gestión de la configuración
Página 366
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
04 - Gestión de la configuración
Resumen
Página 367
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
Contenido
Página 368
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Riesgo
Página 369
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Riesgos de proyecto /1
Página 370
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Riesgos de proyecto /2
Página 371
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Riesgos de proyecto /3
Página 372
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Riesgos de producto
Página 373
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Página 374
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Página 375
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
05 - Riesgo y proceso de prueba
Resumen
V – Gestión de pruebas
Contenido
Página 377
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Página 378
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
- Probador (“tester”)
- Ejecuta los casos de prueba con el objeto de detectar errores
- Registra los resultados en un protocolo de pruebas
- Introduce los defectos (incidentes) en un repositorio (informe de
problemas)
- Jefe de pruebas (“test manager”)
- Evalúa el informe de problemas
- Asigna prioridades a los defectos (de acuerdo con la dirección del
proyecto, cliente, etc.)
- Redacta el informe de avance en función del estado actual de las
labores de corrección
Página 379
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Página 380
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
V – Gestión de pruebas
06 - Gestión de incidencias
Página 382
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Página 383
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Estado de un defecto
- El estado de un defecto aporta información relativa al
progreso/evolución del trabajo que ha sido desarrollado para
este defecto
- Los posibles estados de un defectos son, pero no están
limitados a los siguientes:
- Nuevo (“new”) - El probador ha introducido un defecto en el sistema
- Abierto (“open”) - Informe de problema confirmado (por el jefe de
pruebas o desarrollador)
- Rechazado (“rejected”) - Rechazado el informe de problema (por el
jefe de pruebas o desarrollador)
- Inspección (“inspection”) - El desarrollador intenta identificar el
defecto
- En observación (“surveillance”) - El defecto no puede ser
reproducido, se encuentra bajo vigilancia
- Trabajo en progresión (“WorkInProgress”) - El defecto es
localizado y preparado/desbloqueado para su corrección
- Repetición de pruebas (“retest”) - El desarrollador ha corregido la
causa del error
- Finalizado (“finalized”) - El probador ha verificado la corrección a
través de la repetición de la/s prueba/s
- No resuelto (“NotSolved”) - El probador no ha podido verificar la
corrección, el defecto aún se encuentra ahí Página 384
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Estado de un defecto
Abierto En observación
Inspección Observación:
⁻ El número de
estados
soportados por
Trabajo en
herramientas es
progresión
variable (pueden
ser tres, pueden
ser veinte).
Repetición de
No resuelto Finalizado
prueba
Página 385
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Estado de un defecto
Página 386
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Página 387
Probador Certificado – Nivel Básico V1.1.0.c_ES
V – Gestión de pruebas
06 - Gestión de incidencias
Resumen
Página 388
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
Contenido
Página 389
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
Contenido
Página 390
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Observaciones generales
Página 391
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 392
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 393
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 394
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 395
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 396
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 397
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 398
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 399
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 400
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 401
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 402
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 405
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 407
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
- Robots de pruebas
- Pueden abordar las interfaces externas del objeto de prueba de
forma directa
- Pueden aceptar o suministrar datos, el avance de la prueba se
ejecuta de forma automática
- Normalmente aportan una función para comparar los resultados
reales con los esperados
- Normalmente las herramientas de captura / reproducción son
utilizadas como robots de prueba. Éstos registran los pasos de la
ejecución de la prueba a través de la interfaz de usuario y los
almacenan como un fichero de script (“script file”)
- Permiten la repetición automática de la secuencia de prueba
utilizando el script registrado
- Muy apropiados para pruebas de regresión y pruebas
exploratorias
Página 408
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 409
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 411
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 412
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 413
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 414
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
Página 415
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
01 - Tipos de herramientas de prueba
VI - Herramientas de pruebas
Contenido
Página 417
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 418
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 419
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 420
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 422
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 423
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 424
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 427
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
02 - Uso efectivo de herramientas de prueba
Página 428
Probador Certificado – Nivel Básico V1.1.0.c_ES
VI - Herramientas de pruebas
Contenido
Página 429
VI - Herramientas de pruebas
Probador Certificado – Nivel Básico V1.1.0.c_ES
Resumen
- Hay disponible una amplia gama de herramientas de
pruebas, que cubren muy diferentes tareas:
- Herramientas de gestión de pruebas (“test management tools”)
- Herramientas de planifcación de pruebas (“test planning tools”)
- Herramientas de especificación de pruebas (“test specification
tools”)
- Herramientas de ejecución de pruebas (“test execution tools”)
- Herramientas para el análisis de objetos de prueba (“tools for test
object analysis”)
- Herramientas para el apoyo de pruebas no funcionales (“tools
supporting non-functional tests”)
- El despliegue de herramientas debe ser llevado a cabo en
base a un análisis coste-beneficio
- La introducción de una nueva herramienta debe ser
preparada de forma cuidadosa con el objeto de asegurar el
éxito
- Se recomienda un lanzamiento paso a paso comenzando con
un proyecto piloto
Página 434
Probador Certificado – Nivel Básico V1.1.0.c_ES
Gracias por su
Participación!
Página 435