pruebas fundamentos

25
evolución tecnológica... Pruebas Fundamentos

Upload: professional-testing

Post on 20-Jan-2015

108 views

Category:

Education


0 download

DESCRIPTION

Presnetaciónsobre Fundamentos de Pruebas de Software, Capacitación para Tester.

TRANSCRIPT

Page 1: Pruebas fundamentos

evolución tecnológica...

Pruebas Fundamentos

Page 2: Pruebas fundamentos

Temario

evolución tecnológica...

Ø  Conceptos básicos de pruebas. Ø  Análisis de ambigüedades sobre

requerimientos. Ø  Técnicas de Diseño de Casos de Prueba. Ø  Desarrollo de Procedimientos de Prueba. Ø  Principios para Revisión de Casos de

Prueba. Ø  Desarrollo de Casos de Prueba.

Page 3: Pruebas fundamentos

Agenda

Ø  Objetivo.

Ø  Introducción a las pruebas.

Ø  Pruebas en el proceso de vida del software.

Ø  Métodos de las pruebas.

Ø  Niveles de pruebas.

Ø  Tipos de pruebas.

Ø  Sesión de preguntas.

evolución tecnológica...

Page 4: Pruebas fundamentos

OBJETIVO

Ø  Objetivo. Brindar al participante una introducción a la disciplina de pruebas y su participación en el ciclo de vida de software. Al finalizar el entrenamiento se tendrá un concepto claro de la disciplina de pruebas, así como de las actividades de prueba que deben ser ejecutadas durante cada fase del desarrollo de un software.

Ø  El curso esta dirigido a cualquier persona que esta interesada en empezar a conocer los conceptos básicos de la Célula de Certificación QA.

evolución tecnológica...

Page 5: Pruebas fundamentos

Introducción a las pruebas

¿Qué es una prueba?

Ø  Una Prueba es una operación técnica que consiste en la determinación de una o mas características de un producto, proceso o de un servicio dado, según un procedimiento en especifico.

Ø  Una Prueba como proceso consiste en todas las actividades del ciclo de vida del proyecto, estáticas y dinámicas, concernientes con la planeación, preparación y evaluación de productos de software y relacionados con los productos de trabajo, para determinar si se satisfacen los requerimientos especificados, para demostrar que cumplen con su propósito y para la detección de defectos.

evolución tecnológica...

Page 6: Pruebas fundamentos

Introducción a las pruebas

Principios de una prueba

Ø  Las pruebas demuestran la existencia de defectos.

Ø  Realizar pruebas exhaustivas es imposible.

Ø  Involucrar la etapa desde el inicio del proyecto.

Ø  Asignación de prioridades y severidad a las pruebas.

Ø  El tipo de pruebas a realizar se basa en la criticidad del proyecto.

Ø  Algunas características son:

Ø  Precisa. Muestra que es lo que se supone se probará. Ø  Efectiva. Ayuda a encontrar defectos.

Ø  Trazable. Existe una relación con los requerimientos.

Ø  Evolutiva. Fácil de mantener. Ø  Eficiente. Sin pasos innecesarios.

Ø  Estado inicial. Retorna el estado de pruebas al estado inicial.

evolución tecnológica...

Page 7: Pruebas fundamentos

Introducción a las pruebas

¿Qué es un error/defecto/falla?

Ø  Error. Una acción humana que produce un resultado incorrecto.

Ø  Defecto. Es el resultado de un error en el software: Ø  También conocido como bug. Ø  Si es ejecutada una aplicación con un defecto, puede generar una falla.

Ø  Falla. Desviación del componente o sistema en comparación con el resultado esperado. Ø  Falla es un evento; defecto es un estado del software, causado por un error.

evolución tecnológica...

Page 8: Pruebas fundamentos

Introducción a las pruebas

¿Qué es un error/defecto/falla? … Continuación

evolución tecnológica...

Una persona comete un

error ...

… Esto crea un defecto en el software ...

… Esto puede causar una falla en operación.

Page 9: Pruebas fundamentos

Introducción a las pruebas Proceso fundamental de las pruebas

El proceso fundamental de las pruebas consta de 5 actividades y se utiliza para la realización de cada uno de los tipos de prueba a implementar dentro de todos los proyectos.

evolución tecnológica...

Planeación de

Pruebas

Desarrollo de Casos de prueba

Ejecución de Pruebas

Reportes de Avance

Finalización de Pruebas

Page 10: Pruebas fundamentos

Introducción a las pruebas Ø  Proceso fundamental de las pruebas … Continuación

Ø  Planeación de las pruebas. Se define la estrategia que se va utilizar en las pruebas, además que determina las técnicas apropiadas (dependiendo del tipo de aplicación, etc.) para el diseño de los casos de prueba.

Ø  Desarrollo de casos de prueba. Se desarrollan los casos de prueba en base a las técnicas de diseño especificadas en la planeación de pruebas.

Ø  Ejecución de las pruebas. Se verifica que el resultado esperado de cada prueba realizada sea entregada de manera exacta por el sistema o componente. En esta etapa es muy importante la construcción de evidencias de ejecución.

Ø  Reporte de avance. Se muestra el estado y avance de las actividades de prueba durante la etapa de desarrollo y ejecución.

Ø  Finalización de las pruebas. Se verifica que los registros de pruebas cumplan los criterios de finalización de pruebas especificados, en caso contrario, se necesitan repetir las actividades de la prueba, incluso puede ser necesario diseñar mas casos de prueba para poder cumplir con los criterios de finalización y aceptación.

evolución tecnológica...

Page 11: Pruebas fundamentos

Introducción a las pruebas

La calidad en las pruebas:

Ø  La Calidad proporciona un nivel de confiabilidad (La probabilidad de que el software no causara una falla en el sistema por un tiempo en especifico bajo condiciones especificas) de que el software cumpla con los requerimientos definidos, que realice las funciones por las cuales fue elaborado y que se van a reducir posibles errores/defectos/fallas.

evolución tecnológica...

Page 12: Pruebas fundamentos

Pruebas en el proceso de vida del software

Pruebas en el ciclo de vida del software

La siguiente figura ilustra la diferencia entre el enfoque tradicional de pruebas y el enfoque de pruebas a través del ciclo de vida del proyecto.

evolución tecnológica...

Enfoque de pruebas a través del ciclo de vida del proyecto

Inicio del

proyecto Pruebas

Análisis / Diseño

Requerimientos

Codificación

Instalación

Mantenimiento

Enfoque de pruebas tradicional

Page 13: Pruebas fundamentos

Pruebas en el proceso de vida del software

Metodología RBT y Modelo V

Ø  La Metodología RBT y Modelo V de pruebas soporta los principios de pruebas, y también es lo suficientemente flexible para adaptarse a un proceso iterativo e incremental del desarrollo de software. La siguiente figura se presenta el “Modelo V” de pruebas, el cual muestra las relaciones internas entre:

Ø  Los diferentes tipos de pruebas de la aplicación y otras fases del proyecto.

Ø  Las actividades de prueba (ej. preparación y planeación, diseño de pruebas y ejecución de pruebas) y otras actividades del proyecto.

Ø  Entregables de pruebas y otros entregables del proyecto.

Ø  El modelo fue desarrollado por Richard Berder.

Ø  Tiene un enfoque sistemático para:

Ø  Verificar requerimientos como entradas a diseño, codificación y pruebas.

Ø  Establecer seguimiento a los requerimientos.

Ø  Proveer una cobertura máxima de pruebas con el mínimo número de casos de prueba.

Ø  Validar la conformidad del sistema con los requerimientos.

evolución tecnológica...

Page 14: Pruebas fundamentos

Pruebas en el proceso de vida del software - Pruebas

evolución tecnológica...

Metodología RBT y Modelo V … Continuación

Page 15: Pruebas fundamentos

Pruebas en el proceso de vida del software

evolución tecnológica...

Proporciones típicas de descubrir defectos

Page 16: Pruebas fundamentos

Pruebas en el proceso de vida del software

evolución tecnológica...

Proporciones típicas de descubrir defectos … Continuación

Page 17: Pruebas fundamentos

Métodos de las pruebas

Métodos utilizados para las pruebas

Ø  Dinámicas – ejecución Ø  Analizar.

Ø  Demostrar. Ø  Probar. Ø  Validar.

Ø  Estáticas – no ejecución

Ø  Verificar. Ø  Revisar/Inspeccionar el software. Ø  Probar.

evolución tecnológica...

Page 18: Pruebas fundamentos

Niveles de pruebas

Introducción

Ø  Se organizan los tipos de pruebas necesarios para ser usados (cada nivel enlista un grupo de requerimientos o especificaciones funcionales y técnicas).

Ø  Es un grupo de actividades de prueba que son organizadas y dirigidas colectivamente, basadas en requerimientos y riesgos implicados.

Ø  Si los requerimientos no se resuelven, cada nivel define una estrategia para buscar los defectos mas importantes, tan pronto como sea posible, en el mejor camino posible.

evolución tecnológica...

Page 19: Pruebas fundamentos

Niveles de pruebas

Introducción

Ø  Pruebas unitarias.

Ø  Pruebas de integración.

Ø  Pruebas de sistema.

Ø  Pruebas de Aceptación del Usuario (UAT; User Acceptance Test).

Ø  Pruebas de desempeño.

Ø  Pruebas de regresión.

evolución tecnológica...

Page 20: Pruebas fundamentos

Niveles de pruebas Tipos de pruebas … Continuación

evolución tecnológica...

Nivel de prueba Propósito Ambiente Responsable

Page 21: Pruebas fundamentos

Niveles de pruebas Tipos de pruebas … Continuación

evolución tecnológica...

Nivel de prueba Objetivo Criterio de aceptación

Page 22: Pruebas fundamentos

Niveles de pruebas

Introducción

Ø  Pruebas de desempeño:

Ø  La pruebas están enfocadas en tiempo de respuesta del sistema para que se satisfagan los criterios del funcionamiento de las

pantallas y reglas del negocio (Ejemplo. Funciones, negocio, etc). Ø  Pruebas sobre el manejo de grandes cantidades de datos.

Ø  Pruebas de regresión: Ø  Realizar un testing sobre programas modificados para asegurar que los

defectos han sido eliminados.

evolución tecnológica...

Page 23: Pruebas fundamentos

Tipos de pruebas

Introducción

Existen dos tipos de pruebas, las cuales son:

Ø  Caja Negra.

Ø  Caja Blanca.

evolución tecnológica...

Page 24: Pruebas fundamentos

Tipos de pruebas Prueba de caja negra

Ø  Se realizan sin necesidad de conocer las características internas del código.

Ø  Se centra en “¿QUE?” hace el sistema software, en vez de “¿COMO?” lo hace.

Ø  Se usan, típicamente, en las pruebas de nivel de sistema y de aceptación de usuario.

Ø  Pruebas Basadas en la Especificación.

Ø  Se aplican tanto para pruebas Funcionales como pruebas No Funcionales.

evolución tecnológica...

Page 25: Pruebas fundamentos

Tipos de pruebas Pruebas de caja blanca

Ø  Se basan en la estructura del código.

Ø  Se utilizan, típicamente, por los grupos de desarrollo en las fases de prueba de componentes e integración de componentes.

Ø  Pruebas estructurales.

evolución tecnológica...