Professional Documents
Culture Documents
Herramientas de Pruebas
VI - Herramientas de pruebas
Contenido
Captulo VI - Herramientas de pruebas
-
Las herramientas de pruebas pueden ser utilizadas para dar soporte a las actividades de pruebas
-
La denominacin de las herramientas de pruebas se realiza segn el tipo de soporte que presten
-
Las herramientas pueden ser utilizadas para una o ms actividades de soporte a pruebas
-
Herramientas que son utilizadas de forma directa en pruebas tales como herramientas de
ejecucin de pruebas (test execution tools), herramientas de generacin de datos (test data
generation tools) y herramientas de comparacin de resultados (result comparision tools)
Herramientas que ayudan en la gestin del proceso de pruebas tales como aquellas utilizadas
para gestionar pruebas, resultados de prueba, incidencias, defectos, etc., y para informar
(reporting) y monitorizar la ejecucin de pruebas
Cualquier herramienta que ayude en el proceso de pruebas (es decir una hoja de clculo)
Las herramientas de soporte para pruebas pueden tener uno o ms de los siguientes objetivos
dependiendo del contexto:
www.luismercadal.com.ar | info@luismercadal.com.ar
El trmino marco de prueba (test framework) es utilizado con frecuencia en la industria con, al
menos, tres significados:
-
Libreras de pruebas reutilizables y extensibles que pueden ser utilizadas para construir
herramientas de prueba (tambin denominadas arneses de prueba)
Un tipo de diseo de automatizacin de prueba (por ejemplo dirigida por datos/palabra clave)
Herramientas utilizadas para tareas especficas versus paquetes de herramientas de pruebas (test
tool suites )
-
Las herramientas unitarias (single tools) dan soporte a una tarea o actividad especfica
Los paquetes de herramientas cubren varias tareas e integran varias herramientas unitarias
Herramientas intrusivas (intrusive tools) pueden interferir en la ejecucin del objeto de prueba
y puede provocar que difiera respecto del objeto en el entorno real[efecto sonda (probe effect)]
-
Los controladores de pruebas (test drivers) aportan al objeto de prueba datos de entrada
artificiales
www.luismercadal.com.ar | info@luismercadal.com.ar
Ejemplos:
Testlink
HP Quality Center / Application Lifecycle Management (ALM)
Ejemplos:
www.luismercadal.com.ar | info@luismercadal.com.ar
Ejemplos:
Seguimiento de las diferentes versiones de componentes: requisitos cumplidos por una versin
particular, entorno operativo, compilador en uso, etc.
Gestin de versiones de productos de soporte de prueba, configuraciones y otras herramientas
Administracin del cdigo fuente y del cdigo objeto
Referencias a la gestin de pruebas / gestin de requisitos / gestin del cambio
Ejemplos:
Subversion
ClearCase
Plastic SCM
Herramientas de modelado
Prerrequisitos
-
Herramientas de diseo de pruebas son utilizadas para generar entradas de prueba o pruebas
ejecutables y/o orculos de prueba, interfaces grficas de usuario, diseo de modelos o cdigo
Ejemplos:
-
File-AID (Compuware)
Datatect (Banner Software)
www.luismercadal.com.ar | info@luismercadal.com.ar
Se pueden introducir herramientas para apoyar la ejecucin de pruebas en todos los los niveles de
pruebas
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 automtica
Normalmente aportan una funcin para comparar los resultados reales con los esperados
Normalmente las herramientas de captura / reproduccin son utilizadas como robots de prueba.
stos registran los pasos de la ejecucin de la prueba a travs de la interfaz de usuario y los
almacenan como un fichero de script (script file)
Permiten la repeticin automtica de la secuencia de prueba utilizando el script registrado
Muy apropiados para pruebas de regresin y pruebas exploratorias
www.luismercadal.com.ar | info@luismercadal.com.ar
Con frecuencia parte de marcos de prueba ms grandes, pero pueden ser una herramienta
independiente / autnoma
Ejemplos: EXDIFF (TestWorks) y TestBench400 (OriginalSoftware)
Permite acceder al objeto de prueba cuando las interfaces an no han sido implementadas
Regulan la entrada de datos, salida de datos y registran (log) el desarrollo de la prueba
Registran los resultados reales (obtenidos)
Normalmente aportan su entorno de sistema propio
Stubs
-
www.luismercadal.com.ar | info@luismercadal.com.ar
Detectan defectos que slo son evidentes cuando el software se encuentra en ejecucin
Detectan defectos dependientes del tiempo o fugas de memoria (memory leak)
Detectan defectos relacionados con la asignacin de punteros o su aritmtica
La memoria fue asignada pero no fue liberada
Importante para multi sistemas o sistemas de sistemas
Normalmente utilizada en pruebas de componente, pruebas de integracin de componentes o
pruebas de middleware, control y registro del estado interno del objeto de prueba
Ejemplo: Insure++ (Parasoft)
www.luismercadal.com.ar | info@luismercadal.com.ar
Generan una carga sinttica similar a transacciones de usuario paralelas o trfico de red (no es
posible con recursos humanos)
Herramientas de monitorizacin
-
Analiza de forma continua, verifica e informa respecto de los recursos de un sistema especfico y
advierte sobre posibles problemas del servicio
Los datos son el centro de algunos proyectos, por ejemplo conversin de datos / proyectos de
migracin o data warehouse y sus atributos
Son necesarias herramientas para la evaluacin de la calidad de datos para revisar y verificar la
conversin de datos y las reglas de migracin
Para asegurar que los datos procesados son correctos, completos y que cumplen con un estndar
predefinido especfico del contexto
La libertad de errores (free-of-error) representa la correccin de los datos. La mtrica puede ser
definida como las unidades de datos en error dividido por el nmero total de unidades
10
Las ventajas del uso de una herramienta deben superar estos costes
-
Un anlisis coste/beneficio para el despliegue de una herramienta debe ser realizado por
anticipado
En algunos casos, el beneficio total slo ser manifiesto con el uso de la herramienta en ms de
un proyecto / en todos los proyectos
11
Los scripts (guiones) ejecutan funciones del programa del objeto de prueba. El guin busca
datos en un fichero externo / hoja de clculo / base de datos
Los probadores que deseen ejecutar casos de prueba nuevos o modificados no necesitan
redactar un nuevo guin, sino adaptar el fichero externo
Cambios en los datos o en la interfaz de usuario (GUI) pueden alterar la reaccin del objeto de
pruebas, pueden ocurrir problemas de procesamiento
Enfoque guiado por palabra clave (keyword-driven approach) / enfoque de palabra de accin
(action word approach)
-
Los scripts (guiones) son descompuestos en interacciones unitarias (atmicas) del usuario
con el objeto de pruebas. Es posible crear secuencias de pruebas extremadamente flexibles sin la
edicin de los scripts (guiones)
Los datos de prueba y las funciones invocados son guardados externamente. Un script
(guin) de control (control script ) los evala e invoca a las funciones especficas con sus
datos
Inicialmente es necesario un programador para desarrollar los scripts
Los probadores podrn definir pruebas sin conocer el lenguaje de creacin de scripts (scripting
language)
Problema: Los datos externos necesarios crecern rpidamente en complejidad
Para ambas tcnicas, los resultados esperados para cada prueba necesita ser almacenada para su
posterior comparacin
www.luismercadal.com.ar | info@luismercadal.com.ar
12
Examinan el cdigo fuente con el objeto de comprobar la conformidad con convenciones, por
ejemplo, reglas de programacin
Con frecuencia es necesario preparar el cdigo para el anlisis esttico
Un problema detectado con frecuencia: una cantidad relativamente grande de indicaciones
(mensajes), es difcil identificar su relevancia
Es una buena prctica no solo limpiar los fallos sino tambin los mensaje de advertencia
(warnings)
Una hoja de clculo es la herramienta ms utilizada por los jefes de pruebas para evaluaciones e
informes
Evaluacin: Identificar fugas del proceso de pruebas donde herramientas puedan colaborar en su
resolucin
Definicin de requisitos: Las necesidades respecto de la herramienta deben ser definidas de
forma clara, sopesados y vinculados a criterios medibles
Evaluacin: Examinar herramientas de una lista corta. Comprobar la conformidad con la
funcionalidad requerida. Evaluar criterios de calidad adicionales incluyendo licencia, soporte del
fabricante, etc.
Prueba de concepto (proof of concept): Identificar todos los cambios necesarios para utilizar
la herramienta de forma efectiva, como por ejemplo, infraestructura, procesos. Probar la
herramienta de prueba si va a aportar los efectos esperados y soporte al proceso de prueba
www.luismercadal.com.ar | info@luismercadal.com.ar
13
El uso de la herramienta:
Identificar los requisitos internos para preparacin / orientacin (coaching) y tutora (mentoring)
Relacin coste-beneficio
Un caso de negocio concreto ser la base para un anlisis coste-beneficio!
www.luismercadal.com.ar | info@luismercadal.com.ar
14