Claves de la automatización de pruebas de software



Documentos relacionados
MANUAL COPIAS DE SEGURIDAD

IAP TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO)

SSTQB. Nivel Fundamentos. Examen ejemplo. Programa de estudios 2010

Curso Online de Microsoft Project

Incidencias: Todas las incidencias que ocurrirán durante el apadrinamiento de un niño se deben registrar para poder buscar soluciones.

Administración de Bases de Datos; Remota e In-Situ.

Capacitación Rational Funcional Tester

Distribuidor de documentos 1. Ventajas. Distribuidor de documentos

De la Integración Continua a la Entrega Continua

AUTOMATED ACCOUNTS PAYABLE

Soluciones Informáticas para la Gestión de la Calidad c/vicente Aleixandre nº 10 4º H, A CORUÑA Telf: / info@spuch.

COPIAS DE SEGURIDAD CON COBIAN BACKUP INSTALACIÓN Y CONFIGURACIÓN

Implantación y Aceptación del Sistema

ing Solution La forma más efectiva de llegar a sus clientes.

Monitorización y gestión de dispositivos, servicios y aplicaciones

Plan de estudios ISTQB: Nivel Fundamentos

El cuadro de mando contiene indicadores e informes que deben actualizarse a partir de la información de su sistema informático.

INSTALACIÓ N A3ERP. Informática para empresas INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

GESTIÓN REMOTA Y CENTRALIZADA DE DISPOSITIVOS MÓVILES PROPUESTA DE COLABORACIÓN.

INSTALACIÓN A3ERP INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

Instalación. Interfaz gráfico. Programación de Backups. Anexo I: Gestión de la seguridad. Manual de Usuario de Backup Online 1/21.

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos.

Gestión de proyectos

Capítulo 5. Cliente-Servidor.

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER

LA SOLUCIÓN SGAIM. La plataforma está en constante actualización y autoaprendizaje, para ofrecer siempre el mejor resultado.

Guía rápida de instalación y puesta en marcha del Agente ADSL

Guía Rápida de Inicio

Seminario de Informática

Administración de puestos de trabajo y servidores

Trebelius SISTEMA INTEGRADO DE GESTION DE CLINICAS

Instalación y uso de Check 2000 Client Server con ZENworks 2

MIGRACIÓN DE BASE DE DATOS SQL 2000 A SQL 2008R2 DEL SISGALENPLUS DOCUMENTACIÓN DEL SISTEMA DE GESTIÓN HOSPITALARIA

Proceso de Servicio de Informática y Comunicaciones

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

Las 10 preguntas más habituales sobre los Sistemas de Captación de Datos en planta

Guía Rápida de Puesta en Marcha de MailStore

6 Anexos: 6.1 Definición de Rup:

Escudo Movistar Guía Rápida de Instalación Para Windows

file:///d:/users/coord%20tic/mis%20documentos/mis%20sitios%20web/web%20ntic.orgfree.com/man...

IBM Tivoli Asset Management for IT. IBM Tivoli Service Request Manager

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

D.T.Informática S.L. [Sistema hada] hilo Administrador Desarrollo Activo

Integración de AuraPortal con SAP

Capítulo 4 Pruebas e implementación de la aplicación CAPÍTULO 4 PRUEBAS E IMPLEMENTACIÓN DE LA APLICACIÓN

:: Software de Facturación y Gestión para PYMES y Autónomos ::

Gestión y Desarrollo de Requisitos en Proyectos Software

SEMANA 12 SEGURIDAD EN UNA RED

AUTOMATED ACCOUNTS PAYABLE

Número uno en sistemas de gestión para traducción

Descripción general de Document Distributor

Tutoriales sobre Moodle. EOI de Murcia. 0. Instrucciones para el volcado de cursos entre profesores

E Documento de entrega de Aplicación

- A continuación, se nos abrirá la siguiente ventana pidiendo contraseña, que el cliente haya especificado al instalar Wingest 7

INFORME Nº1 PROPUESTA METODOLÓGICA Y PLAN DE TRABAJO DESARROLLO DE UN SISTEMA INTEGRADO DE GESTIÓN PARA EL GOBIERNO REGIONAL DE ATACAMA

TeCS. Sistema de ayuda a la gestión del desarrollo de producto cerámico

Unidad 1. Fundamentos en Gestión de Riesgos

INSTALACIÓN DE MEDPRO

CAPITULO 4. ANALISIS COMPARATIVO Y SELECCION DE LA PLATAFORMA EDUCATIVA.

INTELIGENTE Y VERSÁTIL

MACROPROCESO GESTIÓN TECNOLÓGICA

GARANTÍA. Garantía. Mantenimiento. Asistencia técnica. Sistemas de identificación. Servicios adicionales

Manual de Instalación. Sistema FECU S.A.

Instalación de la aplicación.

SCANTERRA. Manual de usuario

PRUEBAS, CALIDAD Y MANTENIMIENTO DEL SOFTWARE

Copias de seguridad con SQL Server 2005 WhitePaper Febrero de 2008

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

CI Politécnico Estella

Guía de Instalación. Glpi

CAPITULO IV CONCLUSIONES Y RECOMENDACIONES

Gestión de Procesos de Compra. Documentación Técnico Comercial

Servicio de hospedaje de servidores


FICHA DE PRODUCTO TRAZALAB. Soluciones de gestión y vigilancia alimentaria para los laboratorios de análisis de calidad alimentaria (Trazalab)

Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets

Planificación, Gestión y Desarrollo de Proyectos

Aplicación de protección con contraseña para los dispositivos flash USB de Verbatim

Sistema Gestión Licitación para la compra del desarrollo y migración del Sistema de Gestión de Activos y Configuraciones para Plan Ceibal

SIMAD CLOUD. La Gestión Documental ahora en la nube, más eficiente SISTEMA INTEGRADO DE ADMINISTRACIÓN DOCUMENTAL

Introducción al Proceso de Pruebas.

Departamento de Lenguajes y Sistemas Informáticos. Ciclo de vida del software

Características. WinCDEmu.

Información comercial sobre el Software de Captura de datos de Almacén INVSCAN+ para gestión de stocks.

Historial de Versiones: Velneo vversion. Funcionamiento. Repositorio de versiones. Funcionalidades del Historial de Versiones. Bloquear.

UNIDESYS UNIVERSAL BUSINESS SYSTEMS INSTALACIÓN NUEVO PUESTO DE TRABAJO

La Solución informática para su sistema de gestión

Elementos requeridos para crearlos (ejemplo: el compilador)

Certool es la solución informática desarrollada por AENOR para la gestión eficaz de los sistemas.

1 El plan de contingencia. Seguimiento

copias de seguridad remota (backup online)

Asistente para la ayuda

Se ha confeccionado una aplicación sencilla para poder probar el interfaz de gestión explotación de MEGA, Modelo Estandarizado de Gestión de Agua.

1º CFGS ASIR IMPLANTACIÓN DE SISTEMAS OPERATIVOS

Gestión de Equipos en Movilidad. Paseo de Chil 29,Las Palmas G.C.

MICROSOFT PROJECT 2010

Unidad VI: Supervisión y Revisión del proyecto

CLOUD ENIAC BACKUP. Sus datos son importantes?

Eurowin 8.0 SQL. Manual de la FIRMA DIGITALIZADA

Transcripción:

SQS Software Quality Systems Claves de la automatización de pruebas de software Jaime Paniagua Madrid, 26 de Septiembre 2012 Índice 1. Introducción al Proceso de Automatización 2. Fases en el Proceso de Automatización 3. Claves de la Automatización de Pruebas 4. Conclusiones

Introducción al Proceso de Automatización Un Ejercicio de Imaginación COMPONENTES Nº EJEMPLOS Plataforma HW 1 INTEL SS.OO 5 Windows XP, Vista, CE, 7, 8 Clientes Front-End 8 IE7, IE8, IE9, Firefox 14, Firefox 15, Chrome 3.9, Chrome 3.10, Chrome 3.11 Procesos Negocio 5 Login, Búsqueda, Entrada Pedido, Confirmación, Rellenar Pedido Data Sets 15 Usuarios existentes, no existentes, contraseñas, cadenas de búsqueda, etc Nº TOTAL DE TESTS 1x5x8x5x15 = 3.000 posibles escenarios A mano? f#@#!!! Introducción al Proceso de Automatización Objetivos en Conflicto Calidad Costes Tiempo

Introducción al Proceso de Automatización Automatización Qué es la Automatización de Pruebas? El uso de herramientas o técnicas que permiten realizar CUALQUIER actividad de prueba de forma automática. Introducción al Proceso de Automatización Ejemplo: Configuración del entorno Input data Software Database

Introducción al Proceso de Automatización Ejemplo: Ejecución Ejecución Resultado Introducción al Proceso de Automatización Ejemplo: Ejecución manual de la misma prueba Resultado Diferente El entorno de prueba ha de ser reseteado antes de repetir el test para asegurar resultados limpios.

Introducción al Proceso de Automatización Ejemplo: Repetición de prueba con datos diferentes Input data Diferente Database Introducción al Proceso de Automatización Ejemplo: Repetición de prueba con datos diferentes Resultado Inesperado BD y software también han de ser reseteados!!!

Introducción al Proceso de Automatización Ejemplo: Preparación correcta de Prueba Introducción al Proceso de Automatización Ejemplo: y ahora con datos diferentes Así, sí aseguramos la repetibilidad

Introducción al Proceso de Automatización Ejemplo: Salvar los resultados de Pruebas Salvar resultados relevantes Actualizar el entorno para nuevas pruebas Introducción al Proceso de Automatización Ejemplo: Almacenamiento Repositorio de Resultados Se guardan RESULTADOS... Y DATOS DE ENTRADA Almacenar DATOS DE ENTRADA

Introducción al Proceso de Automatización Ejemplo: Resultados esperados Los resultados correctos se salvan como resultados esperados Archivo de Resultados Esperados Introducción al Proceso de Automatización Ejemplo: Comparación de resultados Resultado Esperado Resultado Actual de un Nuevo Test Contrastamos los Resultados!!! No hay Diferencias

Índice 1. Introducción al Proceso de Automatización 2. Fases en el Proceso de Automatización 3. Claves de la Automatización de Pruebas 4. Conclusiones Fases en el Proceso de Automatización Visión general Un número limitado de pasos Cada paso parece simple Todo el proceso puede ser complejo Entorno Hardware heterogéneo Número de pasos Factor humano STEP STEP STEP STEP STEP STEP STEP STEP STEP Estandarizar procedimientos Parametrizar los Scripts Usos múltiples

Fases en el Proceso de Automatización Visión general Comparación Definición de resultados esperados Evaluación de los resultados de Test Salvar los Resultados obtenidos Ejecución Inicializar el Entorno de Test Proporcionar los Test Data Setup los Ficheros de Test Setup del Entorno de Test Fases en el Proceso de Automatización Setup del Entorno Establecer la arquitectura del Sistema Qué elementos corresponden a TE? Hardware (ordenadores,...) Software (programas, BD,...) Qué dependencia existe entre los elementos? Organización de la Estructura Cómo se encuentra organizada?

Fases en el Proceso de Automatización Setup de los ficheros de Pruebas Estructura de Datos Diferenciación entre los tipos de datos Estructurados por: producto / release / proyecto / Test item Convención de nombres Importante para el Backup No importante para el Backup Fases en el Proceso de Automatización Proporcionar los Test Data Métodos alternativos Utilizando aplicaciones Utilizando BD existentes Utilizando otras utilidades Mediante una combinación de métodos Productive DB initialize unload dump Test / unload DB load backup reload Test DB backup backup reload backup Test data utility generate test data load files load into DB Test DB Application Editing / selecting online or with tools

Fases en el Proceso de Automatización Inicializar el Entorno Reset del Entorno de Test Parada de procesos / servidores Borrado y creación de ficheros / tablas de BD Carga de la Configuración Ficheros.ini, registro Carga de los Test Data Iniciar los procesos Servidor BD Servidor de Aplicaciones Servidor de Licencias Fases en el Proceso de Automatización Ejecución Ejecución del Test En ocasiones se confunde con todo el proceso Start depends on the test item: Batch Ejecución en batch de la aplicación Online Iniciar la aplicación desde el menú Iniciar el programa mediante una herramienta de C/R

Fases en el Proceso de Automatización Ejecución: Mediante herramientas de C/R Las herramientas de C/R manejan los diferentes componentes de la aplicación Capturan acciones del ratón y de teclado Grabación de Scripts para la reutilización Test execution Actividades adicionales Inicialización de BD Inicialización del entorno de la aplicación Backup de los Resultados de Test / gestión de los Test Data Fases en el Proceso de Automatización Salvar Resultados Obtenidos Reglas Solamente salvar los resultados necesarios para la verificación de la aplicación Los datos deben de tener un formato que sea posible su comparación Solo salvar ficheros planos Salvar ficheros de BD Completamente o selectivamente Copiar ficheros

Fases en el Proceso de Automatización Evaluación de los Resultados Evaluación basada en: Resultados Actuales Resultados Esperados Origen de los resultados esperados Resultados de un Test de Referencia (proyectos de migración) Resultados calculados: calculados en base a los datos de entrada Fases en el Proceso de Automatización Comparación de resultados actuales y esperados Objetivos Comparación automática de los resultados Comparación que ahorra tiempo Ciclos rápidos de retest

Índice 1. Introducción al Proceso de Automatización 2. Fases en el Proceso de Automatización 3. Claves de la Automatización de Pruebas 4. Conclusiones Claves de la Automatización de Pruebas Tomar medidas Por qué medir la Automatización de las pruebas? Para decidir si la Automatización ha sido una buena inversión Especialmente indicada para tareas repetitivas Para evaluar opciones, comparar alternativas, y monitorizar las mejoras Para tener avisos al principio, y para realizar predicciones Para realizar una comparativa (benchmark)

Claves de la Automatización de Pruebas Entorno Manual Distribución del esfuerzo en un entorno manual: Costes 1 er Ciclo 2º Ciclo 3 er Ciclo Manual Tester Tiempo Mantenimiento Ejecución Claves de la Automatización de Pruebas Entorno Automatizado Implantando la automatización: Costes Implantación 1 er Ciclo 2 o Ciclo 3 er Ciclo Instalación Mtto Entrenamiento Tiempo Implantación Mantenimiento Ejecución

Claves de la Automatización de Pruebas Beneficios/Problemas Automatización es la solución a todos los problemas? Posibles beneficios: Ejecución más rápida Ejecución desatendida Pruebas repetibles Más pruebas Mejores pruebas Más barato Menos esfuerzo Posibles problemas: Ejecución más lenta Ejecución poco fiable Menos pruebas Peores pruebas Más caro Más esfuerzo Necesidad de aprendizaje Acabar con el aburrimiento Claves de la Automatización de Pruebas Características Rapidez en la ejecución o Ciclo de Pruebas de Regresión más corto=>menos tiempo para paso a producción. Ejecución de MÁS pruebas en el mismo periodo de tiempo = Mayor cobertura. Puede agilizar la ejecución manual (p.e. carga de datos) Menor coste

Claves de la Automatización de Pruebas Características Ejecución de Pruebas desatendida En paralelo a las pruebas manuales Ejecución en fuera del horario de trabajo Durante la noche Fines de semana 24h/día De nuevo, menor tiempo para producción y mejor cobertura Menor coste Claves de la Automatización de Pruebas Características Reducción de errores en la ejecución Script Automático VS. Guión Manual: Script ejecuta siempre la prueba de la misma manera. No es necesario re-ejecutar pruebas ambiguas. Se reducen los test-run. Se reduce el tiempo de ejecución Aumenta la calidad final Menor coste

Claves de la Automatización de Pruebas Características Permite repetición de tareas (variando datos, etc ) El testing manual incluye tareas repetitivas y aburridas Especialmente indicada para tareas repetitivas Formalizar procesos de pruebas Menos aburrimiento => Menor probabilidad de Fallo => Podemos Fijarnos en Pruebas Importantes => Mejor calidad en las pruebas. Menor coste Claves de la Automatización de Pruebas Ideas Erróneas Algunas ideas erróneas: 1 a - Costes La mayor parte del coste en la implantación de la automatización es la licencia de la herramienta 2 a - Experiencia Las herramientas son tan intuitivas que será necesario ninguna experiencia técnica para diseñar y ejecutar pruebas 3 a - Cobertura Todo se puede automatizar

Claves de la Automatización de Pruebas Costes Dónde están los costes de la automatización? Licencias y entrenamiento. Subcontratación a terceros? Mantenimiento: scripts, test data, entorno Claves de la Automatización de Pruebas Objetivo Es importante recordar No todo se puede automatizar Un objetivo realista podría ser 30-50% Un máximo podría ser un 70%

Claves de la Automatización de Pruebas Planificar Pero OJO! También podemos conseguir todo lo contrario: que sea más caro, menos fiable, con menos y peores pruebas Cómo evitarlo? PLANIFICANDO!!! Claves de la Automatización de Pruebas Candidatas para Automatizar Cómo decidir qué se debe automatizar? Aplicaciones...... con frecuentes actualizaciones... que son críticas para el negocio.... que son complejas.... que deben ser probadas en múltiples plataformas o entornos.... que deben soportar usuarios concurrentes.... módulos que son utilizados por varias aplicaciones.... en las que el coste de corregir errores es muy alto. También podemos empezar con un proyecto piloto

Claves de la Automatización de Pruebas Factores Factores que precondicionan el éxito de un Proceso de Pruebas: Control de Versiones Integración Continua Gestión de Incidencias Gestión de Entornos Controlados Documentación del Código Claves de la Automatización de Pruebas Reglas Algunas reglas básicas: Todo no se puede automatizar. Comienza Paso-a-Paso, céntrese primero en las tareas repetitivas que consumen tiempo. La automatización se basa en la reutilización, si una prueba no va a ser re-ejecutada no la automatice. Compare el esfuerzo de automatizar y su utilización con el esfuerzo de hacerlo manualmente. Tenga en cuenta el Mantenimiento. Compare el esfuero de mantener el entorno de pruebas con el esfuerzo de hacerlo manualmente.

Índice 1. Introducción al Proceso de Automatización 2. Fases en el Proceso de Automatización 3. Claves de la Automatización de Pruebas 4. Conclusiones Conclusiones Qué hace que sea bueno un Test de Automatización? Tests que necesitan ejecutarse para cada compilación de la aplicación (sanity check, test de regression) Tests que utilizan múltiples valores para las mismas tareas (data-driven tests) Stress/load testing Ejecución repetitiva? la mejor candidata para Automatizar.

Conclusiones Qué hace que sea malo un Test de Automatización? Testing de Usabilidad Testing que se realiza una sola vez "ASAP" testing Necesitamos testear ya! Testing sin resultados predecibles Improvisación? - la peor candidata para Automatizar. Conclusiones Definir el propósito de llevar a cabo la Automatización. Desarrollar una estrategia de Automatización Las herramientas son muy complicadas. Tratar el proceso de Automatización de las pruebas como un proceso de desarrollo de Software El esfuerzo en Automatización es una inversión Tener un equipo con buenas cualidades

SQS Software Quality Systems Av. Zugazarte 8, 1º - dpto 6 48930 Las Arenas (Bizkaia) Tel : +34 94 480 46 17 E-Mail: jpaniagua@sqs.es Internet: www.sqs.es