plan de estudios istqb: nivel fundamentosdinamizaconsulting.com/istqb/t2-fundamentos de...
TRANSCRIPT
Temario
1. INTRODUCCIÓN
2. FUNDAMENTOS DE PRUEBAS
3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL SOFTWARE
4. TÉCNICAS ESTÁTICAS
5. TÉCNICAS DE DISEÑO DE PRUEBAS
6. GESTIÓN DE PRUEBAS
7. HERRAMIENTAS DE PRUEBAS
Temario
1. INTRODUCCIÓN
2. FUNDAMENTOS DE PRUEBAS
3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL SOFTWARE
4. TÉCNICAS ESTÁTICAS
5. TÉCNICAS DE DISEÑO DE PRUEBAS
6. GESTIÓN DE PRUEBAS
7. HERRAMIENTAS DE PRUEBAS
Temario
2. FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
2.3 Proceso de Pruebas Básico
2.4 Psicología en el Proceso de Pruebas
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
Persona
Error Defecto
Fallo
No fallo
Sistema
Entorno
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿Porqué es necesario el proceso de pruebas?
Contexto de los sistemas del software
Causas de los defectos de software
Función del proceso de pruebas en el desarrollo, mantenimiento y operaciones de SW
Proceso de pruebas y calidad
¿Con cuantas pruebas es suficiente?
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿Porqué es necesario el proceso de pruebas?
Contexto de los sistemas del software
Reseña histórica
El software es parte de nuestra vida
Consecuencias de un mal funcionamiento:
Perdida de dinero
Perdida de tiempo
Daños personales
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿Porqué es necesario el proceso de pruebas?
Causas de los defectos de software
Errores humanos
Errores técnicos
Errores ambientales o de entorno
Error Defecto Puede provocar o no fallo
Si provoca fallo PROBLEMA
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿Porqué es necesario el proceso de pruebas?
Función del proceso de pruebas en el desarrollo, mantenimiento y operaciones de SW
El proceso de pruebas tiene como funciones:
Reducir el riesgo de fallos
Evitar complicaciones
Cumplir con los contratos firmados
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿Porqué es necesario el proceso de pruebas?
Proceso de pruebas y calidad
Gracias a ellas, podemos medir la calidad del software
Fiabilidad
Usabilidad
Eficiencia
Mantenibilidad
Portabilidad
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿Porqué es necesario el proceso de pruebas?
Proceso de pruebas y calidad (II)
Ayudan a reducir el riesgo de fallos
Retroalimentación del proceso del fallos: Aprendemos de proyectos anteriores y en base a la experiencia mejoramos los métodos de pruebas
Deben integrarse como una parte del desarrollo del software
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿Porqué es necesario el proceso de pruebas?
¿Con cuantas pruebas es suficiente?
No existe un número de pruebas fijo
Depende de muchos factores:
Tipo de software
Experiencia de los probadores
Tiempo
Dinero
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿En que consiste el proceso de pruebas?
Actividades el proceso de pruebas:
Planificar
Controlar
Seleccionar las condiciones de pruebas
Diseñar
Ejecutar casos de prueba
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿En que consiste el proceso de pruebas?
Actividades el proceso de pruebas (II):
Comprobar los resultados
Evaluar criterios de salida
Elaborar informes
Finalizar proceso
Revisión de documentos
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿En que consiste el proceso de pruebas?
Objetivos:
Identificar defectos
Aumentar confianza en el nivel de calidad
Facilitar información en toma de decisiones
Evitar la aparición de defectos
FUNDAMENTOS DE PRUEBAS
2.1 Comprendiendo el Proceso de Pruebas de Software
¿En que consiste el proceso de pruebas?
Proceso de pruebas y Proceso de depuración:
Proceso de pruebas:
Identificar fallos provocados por defectos
Proceso de depuración:
Localiza, analiza y elimina la causa del fallo
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
1. Las pruebas demuestran la presencia de defectos
2. No existen las pruebas exhaustivas
3. Pruebas tempranas
4. Agrupación de defectos
5. Paradoja del pesticida
6. Las pruebas dependen del contexto
7. Falacia de ausencia de errores
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
1. Las pruebas demuestran la presencia de defectos
Las pruebas pueden demostrar que hay defectos, pero no pueden demostrar que no los hay.
Reducen la posibilidad de errores
No constituyen una evidencia al 100%
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
2. No existen las pruebas exhaustivas
Probar todo es imposible
Infinitas combinaciones
Solo en casos triviales y muy puntuales se puede garantizar al 100% que todo está probado
Establecer prioridades a la hora de probar
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
3. Pruebas tempranas
Iniciar pruebas lo antes posible
Cuanto antes comencemos, más errores identificaremos y en una etapa más temprana
Cuanto antes detectemos, más fácil de corregir
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
Probar de manera equilibrada y proporcional
No concentrar pruebas
Priorizar los módulos más problemáticos
Intentar detectar defectos antes del lanzamiento
4. Agrupación de defectos
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
5. Paradoja del pesticida
Si repetimos la misma prueba de manera sistemática, estaremos disminuyendo la posibilidad de encontrar fallos
Revisar casos de prueba de manera periódica
Escribir nuevos casos de prueba
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
6. Las pruebas dependen del contexto
Las pruebas se llevan a cabo de manera diferente según el contexto
No es lo mismo pruebas de software de seguridad que un software de juegos
FUNDAMENTOS DE PRUEBAS
2.2 Los Siete Principios Generales del Proceso de Pruebas de Software
7. Falacia de ausencia de errores
No sirve de nada la detección y corrección de errores si el sistema construido no usable y no cumple con las expectativas y necesidades de los usuarios del sistema
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Planificación y control de pruebas
Análisis y diseño de pruebas
Implementación y ejecución de pruebas
Evaluación de los criterios de salida e informes
Actividades de cierre de pruebas
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Planificación y control de pruebas
Planificación de pruebas:
Definir los objetivos de las pruebas
Especificar las actividades de pruebas
Cumplir los objetivos definidos
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Planificación y control de pruebas
Control de pruebas:
Comparar el progreso real con el plan previsto
Medir y reajustar desviaciones
Monitorizar pruebas
Feedback continuo
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Análisis y diseño de pruebas
Fase en la que los objetivos de las pruebas se transforman en condiciones y casos de prueba tangibles
Tareas:
Revisar la base de pruebas:
Requisitos
Integridad del software (nivel de riesgo)
Informes de análisis de riesgos
Arquitectura
Diseño y especificaciones de interfaz
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Análisis y diseño de pruebas
Tareas:
Evaluar la testabilidad de la base de pruebas
Identificar y priorizar las condiciones de prueba
Diseñar y priorizar los casos de prueba de nivel alto
Identificar los casos de prueba
Diseñar la configuración del entorno de pruebas
Crear trazabilidad entre base de pruebas y casos de pruebas
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Implementación y ejecución de pruebas
Es la actividad en la que se especifican los procedimientos y guiones de prueba mediante la combinación de los casos de prueba en un orden determinado y la inclusión de cualquier otra información necesaria para la ejecución de las pruebas
Se configura el entorno y se ejecutan las pruebas
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Implementación y ejecución de pruebas
Tareas principales:
Finalizar, implementar y priorizar los casos de prueba
Desarrollar y priorizar procedimientos de prueba
Crear datos y juegos de prueba
Verificar el entorno de pruebas
Verificar y actualizar trazabilidad entre base de pruebas y casos de pruebas
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Implementación y ejecución de pruebas
Tareas principales (II):
Ejecutar procedimientos de prueba
Registrar los resultados, las identidades y las versiones del software probado
Comparar los resultados
Reportar las discrepancias (incidencias) y analizarlas
Repetir las actividades de prueba (pruebas de confirmación)
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Evaluación de los criterios de salida e informes
Actividad que evalúa la actividad de pruebas contra los objetivos definidos
Tareas principales:
Comprobar los registros de pruebas con los criterios de salida previstos
Evaluar si se requieren más pruebas
Elaborar un resumen de las pruebas
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Actividades de cierre de pruebas
Recopilación de datos de pruebas finalizadas, con el objetivo de consolidar:
Experiencia
Productos de soporte de pruebas
Hechos
Cifras
FUNDAMENTOS DE PRUEBAS
2.3 Proceso de Pruebas Básico
Actividades de cierre de pruebas
Tareas principales:
Comprobar entregables
Cerrar informes de incidencias
Documentar la aceptación del sistema
Finalizar y archivar los productos de soporte
Entregar productos de soporte a equipo de mantenimiento
Analizar y sacar conclusiones
Utilizar la información para mejorar el proceso
FUNDAMENTOS DE PRUEBAS
2.4 Psicología en el Proceso de Pruebas
La actitud que debe adoptarse durante la realización de pruebas y la revisión de las mismas DEBE SER distinta de las actitud que se adopta durante el desarrollo del software
En la medida de lo posible, probadores independientes y PROFESIONALES
Existen diferentes niveles de independencia
Las pruebas deben servir para mejorar la comunicación entre miembros del equipo
FUNDAMENTOS DE PRUEBAS
2.4 Psicología en el Proceso de Pruebas
Niveles de independencia
Pruebas diseñadas por desarrolladores
Pruebas diseñadas por terceros dentro del grupo de desarrollo
Pruebas diseñados por personas de otro grupo de la empresa
Pruebas diseñadas por personas de otra empresa
FUNDAMENTOS DE PRUEBAS
2.4 Psicología en el Proceso de Pruebas
Es importante tener en cuenta que:
Hay que establecer claramente los objetivos de las pruebas, ya que las los proyectos se mueven por objetivos
La búsqueda de fallos requiere:
Curiosidad
Ojo crítico
Atención al detalle
Buena comunicación entre miembros del equipo
Experiencia
FUNDAMENTOS DE PRUEBAS
2.4 Psicología en el Proceso de Pruebas
El desarrollador puede mejorar si las críticas son constructivas
Las pruebas deben servir para mejorar la comunicación entre miembros del equipo
Empezar juntos en lugar de enfrentados
Comunicar de manera neutral y centrada en hechos
Empatizar con el compañero
Confirmar que entendemos al compañero y viceversa
FUNDAMENTOS DE PRUEBAS
Ejercicios
Describir mediante un ejemplo como un defecto de software puede dañar a una persona, medio ambiente o a una empresa
Explicar y comparar mediante ejemplos los términos error, defecto y fallo
Diferencias entre proceso de pruebas y proceso de depuración
Explicar los siete principios del proceso de pruebas
Cuales son las cinco actividades fundamentales del proceso de pruebas básico
Cuales son los cuatro niveles de independencia del software