Beatriz Prez bperez@fing.edu.uy 2da Jornada de Testing - A las Pruebas me reMito Temario 2da Jornada de Testing - A las Pruebas me reMito Las pruebas tienen su propio proceso Por cada fase del desarrollo existe una actividad importante de pruebas a realizar 2da Jornada de Testing - A las Pruebas me reMito Las pruebas en el tiempo Pruebas Unitarias Pruebas de Integracin Pruebas del Sistema Pruebas de Aceptacin Pruebas Funcionales 2da Jornada de Testing - A las Pruebas me reMito Unitaria La prueba unitaria es el proceso de probar los componentes individuales El propsito es descubrir discrepancias entre la especificacin de la interfase de los mdulos y su comportamiento real 2da Jornada de Testing - A las Pruebas me reMito Estrategia de Prueba Pruebas de Caja Negra Validar si el comportamiento observado del producto cumple sus especificaciones Pruebas funcionales Pruebas de Caja Blanca Seleccionar los caminos del programa a ejercitar durante las pruebas Pruebas estructurales 2da Jornada de Testing - A las Pruebas me reMito Unitaria La prueba unitaria es el proceso de probar los componentes individuales El propsito es descubrir discrepancias entre la especificacin de la interfase de los mdulos y su comportamiento real La unidad puede ser probada como caja negra caja blanca ambas 2da Jornada de Testing - A las Pruebas me reMito Las pruebas en el tiempo Pruebas Unitarias Pruebas de Integracin Pruebas del Sistema Pruebas de Aceptacin Pruebas Funcionales 2da Jornada de Testing - A las Pruebas me reMito Prueba de !ntegracin La prueba de integracin es el proceso en el cual los componentes son agregados para crear componentes ms grandes El propsito es identificar problemas cuando se combinan los componentes La integracin puede probarse como caja negra caja blanca ambas 2da Jornada de Testing - A las Pruebas me reMito Estrategias integracin Bottom up Top down A B A Stub Driver B 2da Jornada de Testing - A las Pruebas me reMito Las pruebas en el tiempo Pruebas Unitarias Pruebas de Integracin Pruebas del Sistema Pruebas de Aceptacin Pruebas Funcionales 2da Jornada de Testing - A las Pruebas me reMito Prueba Funcional El objetivo de la prueba funcional es validar cuando el comportamiento observado del software probado cumple o no con sus especificaciones Caja negra 2da Jornada de Testing - A las Pruebas me reMito Las pruebas en el tiempo Pruebas Unitarias Pruebas de Integracin Pruebas del Sistema Pruebas de Aceptacin Pruebas Funcionales 2da Jornada de Testing - A las Pruebas me reMito Prueba del sistema Refiere al comportamiento del sistema Hardware y software Se prueban los requerimientos no funcionales del sistema Las interfaces externas, los dispositivos de hardware, o el ambiente de funcionamiento se evalan a este nivel 2da Jornada de Testing - A las Pruebas me reMito Prueba del sistema Seguridad Usabilidad Configuracin !nstalacin Desempeno (performance) volumen Cargafstress Escalabilidad Otros... 2da Jornada de Testing - A las Pruebas me reMito Las pruebas en el tiempo Pruebas Unitarias Pruebas de Integracin Pruebas del Sistema Pruebas de Aceptacin Pruebas Funcionales 2da Jornada de Testing - A las Pruebas me reMito Prueba de Aceptacin Es la prueba previa a poner en produccin el software El objetivo es verificar que el software est listo y que el usuario final puede realizar las funciones y tareas para las que fue construido 2da Jornada de Testing - A las Pruebas me reMito Prueba de Aceptacin (!!) Pueden ser: Informal: se identifican las funciones pero no hay casos de prueba a seguir. El usuario final determina que hacer Formal : extensin de la prueba del sistema Alfa: Pruebas realizadas por el usuario final en la organizacin de desarrollo Beta: El usuario final es responsable de crear el ambiente, seleccionar sus datos y decidir que funciones explorar. Identifica su propio criterio de aceptacin 2da Jornada de Testing - A las Pruebas me reMito Las pruebas en el tiempo Pruebas Unitarias Pruebas de Integracin Pruebas del Sistema Pruebas de Aceptacin Pruebas Funcionales Pruebas de Regresin 2da Jornada de Testing - A las Pruebas me reMito El proceso de desarrollo Planificacin Requerimientos Diseo Implementacin P R D I P R D I Versin 1 Versin n . 2da Jornada de Testing - A las Pruebas me reMito Pruebas en cada etapa de desarrollo P R D I P R D I Versin 1 Versin x . Pruebas Unitarias Pruebas de Integracin Pruebas Funcionales Pruebas Unitarias Pruebas de Integracin Pruebas Funcionales Pruebas Sistema Planificacin Requerimientos Diseo Implementacin 2da Jornada de Testing - A las Pruebas me reMito Pruebas en cada etapa de desarrollo P R D I Versin n . Planificacin Requerimientos Diseo Implementacin Pruebas Unitarias Pruebas de Integracin Pruebas Funcionales Pruebas Sistema Pruebas Aceptacin Produccin 2da Jornada de Testing - A las Pruebas me reMito Proceso de Pruebas Planificacin Planificacin Evaluacin y Cierre Evaluacin y Cierre Ciclo de Prueba Ciclo de Prueba 2da Jornada de Testing - A las Pruebas me reMito Proceso de Pruebas Planificacin Planificacin Diseno de las Pruebas Diseno de las Pruebas Evaluacin y Cierre Evaluacin y Cierre Ciclo de Prueba Seguimiento y Control Seguimiento y Control 2da Jornada de Testing - A las Pruebas me reMito La prueba exhaustiva no es posible Maximizar el nmero de los errores encontrados por un nmero finito de los casos de prueba Tcnica de prueba es una decisin fundamental 2da Jornada de Testing - A las Pruebas me reMito Proceso de Pruebas Planificacin Planificacin Diseno de las Pruebas Diseno de las Pruebas Configuracin Configuracin Evaluacin y Cierre Evaluacin y Cierre Ciclo de Prueba Seguimiento y Control Seguimiento y Control Ejecucin Ejecucin 2da Jornada de Testing - A las Pruebas me reMito Principales Entregables Casos de Pruebas Reporte de Pruebas Incidentes Plan de Pruebas Planificacin Planificacin Evaluacin y Cierre Evaluacin y Cierre Ciclo de Prueba Ciclo de Prueba Informe Final 2da Jornada de Testing - A las Pruebas me reMito Decisiones Tipo de Prueba Estrategia de Prueba Proceso de Prueba Tcnicas de Prueba 2da Jornada de Testing - A las Pruebas me reMito Las pruebas tempranas en el ciclo de vida del producto previenen defectos 2da Jornada de Testing - A las Pruebas me reMito Debe haber un responsable por las pruebas en la organizacin Planificacin y seguimiento 2da Jornada de Testing - A las Pruebas me reMito Planificacin Tareas de pruebas y de desarrollo Responsabilidades Automatizacin 2da Jornada de Testing - A las Pruebas me reMito Planificacin Planificacin Planificacin de las Pruebas Requerimientos Revisin de Requerimientos Diseo Diseo Pruebas Integracin Diseo Pruebas Funcionales Implementacin Ejecucin Pruebas Unitarias Ejecucin Pruebas Integracin Versin Ejecucin Pruebas Funcionales Diseo Pruebas Unitarias Ejecucin Pruebas Regresin Configuracin Diseo Pruebas Sistema Ejecucin Pruebas Sistema 2da Jornada de Testing - A las Pruebas me reMito Testing funcional Testing planificado Diseo de casos de prueba Tcnicas de caja negra Ejecucin de pruebas, incluso por otro tester Testing exploratorio 2da Jornada de Testing - A las Pruebas me reMito Testing Exploratorio El testing exploratorio es el proceso simultneo de exploracin del producto (aprendizaje), diseo y ejecucin de pruebas. James Bach 2da Jornada de Testing - A las Pruebas me reMito Testing Exploratorio Planificacin Planificacin de las Pruebas Requerimientos Revisin de Requerimientos Diseo Diseo Pruebas Integracin Diseo Pruebas Funcionales Implementacin Ejecucin Pruebas Unitarias Ejecucin Pruebas Integracin Versin Ejecucin Pruebas Funcionales Diseo Pruebas Unitarias Ejecucin Pruebas Regresin Configuracin Testing Exploratorio Diseo Pruebas Sistema Ejecucin Pruebas Sistema 2da Jornada de Testing - A las Pruebas me reMito Responsabilidades Planificacin Planificacin de las Pruebas Requerimientos Revisin de Requerimientos Diseo Diseo Pruebas Integracin Diseo Pruebas Funcionales Implementacin Ejecucin Pruebas Unitarias Ejecucin Pruebas Integracin Versin Ejecucin Pruebas Funcionales Ejecucin Pruebas Sistema Diseo Pruebas Unitarias Ejecucin Pruebas Regresin Configuracin Equipo de Desarrollo Equipo de Prueba Diseo Pruebas Sistema Testing Exploratorio 2da Jornada de Testing - A las Pruebas me reMito cQu podemos Automatizar? Planificacin Planificacin de las Pruebas Requerimientos Revisin de Requerimientos Diseo Diseo Pruebas Integracin Diseo Pruebas Funcionales Implementacin Ejecucin Pruebas Unitarias Ejecucin Pruebas Integracin Versin Ejecucin Pruebas Funcionales Diseo Pruebas Unitarias Ejecucin Pruebas Regresin Configuracin Testing Exploratorio Diseo Pruebas Sistema Ejecucin Pruebas Sistema 2da Jornada de Testing - A las Pruebas me reMito cQu podemos Automatizar? Planificacin Planificacin de las Pruebas Requerimientos Revisin de Requerimientos Diseo Diseo Pruebas Integracin Diseo Pruebas Funcionales Implementacin Ejecucin Pruebas Unitarias Ejecucin Pruebas Integracin Versin Ejecucin Pruebas Funcionales Diseo Pruebas Unitarias Ejecucin Pruebas Regresin Configuracin Diseo Pruebas Sistema Testing Exploratorio Ejecucin Pruebas Sistema 2da Jornada de Testing - A las Pruebas me reMito Automatizacin de las Pruebas funcionales Es un proceso en s mismo 2da Jornada de Testing - A las Pruebas me reMito Automatizacin de las Pruebas funcionales Principales Actividades Planificar la Automatizacin Diseo de las suites de prueba Diseo de los guiones de prueba Grabacin Parametrizacin y Ajustes Ejecucin Organizacin de las pruebas 2da Jornada de Testing - A las Pruebas me reMito Tareas de Automatizacin Planificacin Planificacin de las Pruebas Requerimientos Revisin de Requerimientos Diseo Diseo Pruebas Integracin Diseo Pruebas Funcionales Implementacin Ejecucin Pruebas Unitarias Ejecucin Pruebas Integracin Versin Ejecucin Pruebas Funcionales Testing Exploratorio Diseo Pruebas Unitarias Ejecucin Pruebas Sistema Configuracin Diseo Suites Diseo Guiones Grabacin Parametrizacin y Ajustes Ejecucin Organizacin Automatizacin Planificacin Automatizacin Pruebas Automatizadas Funcionales y Sistema 2da Jornada de Testing - A las Pruebas me reMito cQu podemos Automatizar? Planificacin Planificacin de las Pruebas Requerimientos Revisin de Requerimientos Diseo Diseo Pruebas Integracin Diseo Pruebas Funcionales Implementacin Ejecucin Pruebas Unitarias Ejecucin Pruebas Integracin Versin Ejecucin Pruebas Funcionales Ejecucin Pruebas Sistema Diseo Pruebas Unitarias Testing Exploratorio Configuracin Diseo Suites Diseo Guiones Grabacin Planificacin Automatizacin Pruebas Automatizadas Funcionales y Sistema Pruebas Unitarias Automatizadas Parametrizacin y Ajustes Ejecucin Organizacin Automatizacin 2da Jornada de Testing - A las Pruebas me reMito La prueba efectiva es aquella que encuentra defectos 2da Jornada de Testing A las Pruebas me reMito cPreguntas? 2da Jornada de Testing - A las Pruebas me reMito Referencias Bach J. What is Exploratory Testing? And How it differs from Scripted Testing StickyMinds, Enero 2001. Black R. Managing the Testing Process, 2nd Edition. ISBN 0-471-22398-0, Editorial Wiley, 2002. Kaner C., Bach J., Pretichord B. Lessons Learned in Software Testing, ISBN 0471081124, Wiley, 2001. Kit E. Software Testing In The Real World : Improving The Process, ISBN 0201877562, Addison Wesley, 1995. Myers G. The art of software testing, 2nd edition, ISBN 0- 471-46912-2, John Wiley & Sons Inc., 2004.