Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Pruebas de Software PDF
Pruebas de Software PDF
Pruebas de
Software
2
NDICE Pgina
Presentacin 5
Red de contenidos 6
Unidad de aprendizaje 1: Fundamentos de Pruebas de Software
1.1 Tema 1 : Pruebas de Software 8
1.1.1. : Validacin y Verificacin en el desarrollo de software 8
1.1.2. : Tipos de pruebas 11
1.1.3. : Diseo de casos de prueba 17
1.2 Tema 2 : Administracin de Pruebas 25
1.2.1. : Estrategias de pruebas 25
1.2.2. : Roles y responsabilidades 30
1.2.3. : Tcnicas de pruebas 33
1.2.4. : Herramientas de pruebas 42
Unidad de aprendizaje 2: Fundamentos Rational Functional Tester
2.1 Tema 3 : Introduccin al Rational Functional Tester 54
2.1.1. : Arquitectura de Rational Functional Tester 54
2.1.2. : Configuracin del entorno de pruebas 56
2.1.3. : Configuracin de aplicaciones Java a probar 62
2.1.4. : Proyectos de pruebas funcionales en Rational 67
Functional Tester
2.2 Tema 4 : Script de pruebas funcionales 70
2.2.1. : Grabacin de un script 71
2.2.2. : Reproduccin de un script 89
2.2.3. : Revisin de los resultados 90
2.2.4. : Caractersticas avanzadas de script de pruebas 90
Unidad de aprendizaje 3: Fundamentos Rational Performance Tester
3.1 Tema 5 : Introduccin al Rational Performance Tester 98
3.1.1. : Arquitectura de Rational Performance Tester 98
3.1.2. : Caractersticas y beneficios 99
PRESENTACIN
RED DE CONTENIDOS
Pruebas de Software
Introduccin al Introduccin al
Pruebas de Software Rational Functional Rational
Tester Performance Tester
UNIDAD DE
APRENDIZAJE
TEMARIO
ACTIVIDADES PROPUESTAS
Las pruebas de software se integran dentro de las diferentes fases del ciclo de
vida del software dentro de la Ingeniera de software. En este sentido, se ejecuta
el aplicativo a probar y mediante tcnicas experimentales se trata de descubrir
qu errores tiene.
Una prueba es una actividad ejecutada para evaluar y mejorar la calidad del
producto a travs de la identificacin de defectos y problemas. [SWEBOK]
Algo que los especialistas de pruebas deben considerar es que las pruebas de
software nunca se deben realizar en un entorno de produccin. Es necesario
probar los nuevos sistemas en un entorno de pruebas separado fsicamente del
de produccin. Para crear un entorno de pruebas en una mquina independiente
de la mquina de produccin, es necesario crear las mismas condiciones que
existe en la de produccin.
Con respecto a las tareas asociadas a estos procesos, las pruebas estn
ms relacionadas con el proceso de validacin, mientras que las
revisiones son tareas ms orientadas al proceso de verificacin.
1.1.1.1. Validacin.
El propsito de la Validacin en CMMI es demostrar que un
producto o componente del mismo satisface el uso para el que
se cre al situarlo sobre el entorno previsto.
1.1.1.2. Verificacin.
El propsito de la Verificacin en CMMI es asegurar que los
productos seleccionados cumplen los requisitos especificados.
b. Pruebas automticas
A diferencia de las pruebas manuales, para este tipo de
pruebas, se usa un determinado software para
sistematizarlas y obtener los resultados de las mismas. Por
ejemplo, verificar un mtodo de ordenacin.
b. Pruebas de integracin
Consiste en construir el sistema a partir de los distintos
componentes y probarlo con todos integrados. Estas pruebas
deben realizarse progresivamente. El foco de atencin es el
diseo y la construccin de la arquitectura de software.
c. Pruebas de aceptacin
Son las nicas pruebas que son realizadas por los usuarios
expertos, todas las anteriores las lleva a cabo el equipo de
desarrollo. Consiste en comprobar si el producto est listo
para ser implantado para el uso operativo en el entorno del
usuario. Podemos distinguir entre dos tipos de pruebas; en
ambas existe retroalimentacin por parte del usuario experto:
- Pruebas alfa: las realiza el usuario en presencia de
personal de desarrollo del proyecto haciendo uso de
una mquina preparada para las pruebas.
- Pruebas beta: las realiza el usuario despus de que el
equipo de desarrollo les entregue una versin casi
definitiva del producto.
d. Pruebas funcionales
Este tipo de prueba se realiza sobre el sistema funcionando,
comprobando que cumpla con la especificacin
(normalmente a travs de los casos de uso). Para estas
pruebas, se utilizan las especificaciones de casos de prueba.
e. Pruebas de rendimiento
Las pruebas de rendimiento se basan en comprobar que el
sistema puede soportar el volumen de carga definido en la
especificacin, es decir, hay que comprobar la eficiencia (por
ejemplo, se ha montado una pgina web sobre un servidor y
hay que probar qu capacidad tiene el estado de aceptar
peticiones, es decir capacidad de concurrencia).
2,
5 4
7 6
9 8
11 10
12
13
14
15
Caminos identificados
Camino 1: 1- 2 - 3 - 4 - 15
Camino 2: 1- 2 - 3 - 5 6 14 - 15
Camino 3: 1- 2 - 3 - 5 7 8 13 - 14 - 15
Camino 4: 1- 2 - 3 - 5 7 9 10 - 12 13 14 - 15
Camino 5: 1- 2 - 3 - 5 7 9 11 - 12 13 14 - 15
7
7.1
10
11
12
Caminos identificados
Camino 1: 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12
Camino 2: 1 - 2 - 3 - 4 - 5 - 6 - 7 - 7.1 - 9 - 10 - 11 - 12
Camino 3: 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 1 0 - 6 - 7 - 8 - 9 - 1 0 - 1 1 - 1 2
Camino 4: 1-2-3-4-5-6 -7-8-9-10-1 1-12-5-6- 7-8-9-10-11-12
b. V(G) = 3 Regiones + 1
V(G) = 4
2.1
3
2.2 4
7.1 7
10
CONDICIONES DE ENTRADA
ID CP Clases de equivalencia Cdigo de Cdigo de Nmero de Resultado esperado
Clave personal Orden
banco sucursal cuenta
CEV<02>, CEV<03>, CEV<04>,
CP1 200 1000 10000 Aaaaa Talonario Mensaje "Envo de talonarios"
CEV<05>, CEV<07>
CEV<01>, CEV<03>, CEV<04>,
CP2 820 9999 99999 Zzzzz Movimientos Mensaje "Envo de movimientos "
CEV<05>, CEV<08>
CEV<02>, CEV<03>, CEV<04>, Seleccione Mensaje "Envo de talonarios y
CP3 999 1001 12345 A1b2c
CEV<05>, CEV<06> Orden movimientos"
CENV<01>, CEV<03>, CEV<04>, Seleccione
CP4 30A 1989 12345 1a2b3 Mensaje Cdigo de banco incorrecto
CEV<05>, CEV<07> Orden
CENV<04>, CEV<03>, CEV<04>, Seleccione Mensaje Cdigo de sucursal
CP5 210 999 12345 1a2b3
CEV<05>, CEV<07> Orden incorrecto
CENV<07>, CEV<03>, CEV<04>, Seleccione Mensaje Nmero de cuenta
CP6 210 1989 123 1a2b3
CEV<05>, CEV<07> Orden incorrecto
CENV<09>, CEV<03>, CEV<04>, Seleccione
CP7 210 1989 12345 Mensaje Clave incorrecta
CEV<05>, CEV<07> Orden
Complete la generacin de casos de prueba. Para ello considere las clases de equivalencia.
CONDICIONES DE ENTRADA
ID CP Clases de equivalencia Cdigo de Cdigo de Nmero de Resultado esperado
Clave personal Orden
banco sucursal cuenta
Por otro lado, los responsables del proceso de pruebas deben considerar
optimizar las pruebas. Para ello, es necesaria la definicin de una buena
estrategia, es decir, definir una serie de principios e ideas que puedan ayudar a
guiar las actividades de pruebas.
Automatizacin
1.2.1.7. Regresin
La regresin es la mala conducta de una funcin, atributo o
caracterstica previamente correctos. La palabra regresin
tambin se suele usar para definir el descubrimiento de un error
que previamente no se encontr durante la ejecucin de una
prueba. La regresin normalmente est asociada a algn cambio
en el sistema, como aadir una caracterstica o arreglar un error.
Las pruebas dinmicas slo se aplican sobre el cdigo del producto para
detectar defectos y determinar atributos de calidad del software, por lo que
estaran ms orientadas al rea de validacin. Por otra parte, las tcnicas
de pruebas estticas son tiles para evaluar o analizar documentos de
requisitos, documentacin de diseo, planes de prueba, o manuales de
usuario, e incluso para examinar el cdigo fuente antes de ejecutarlo. En
este sentido, ayudan ms a la implementacin del proceso de verificacin.
a) Basadas en la especificacin
Son conocidas como tcnicas de pruebas de caja negra o
conducidas por entradas/salidas, porque tratan el software
como una caja negra con entradas y salidas, pero no tienen
conocimiento de cmo est estructurado el programa o
componente dentro de la caja. Esencialmente, el tcnico de
pruebas se concentra en qu hace el software y no en cmo
lo hace. Las tcnicas basadas en especificaciones obtienen
los casos de prueba directamente de las especificaciones o
de otros tipos de artefactos que contengan lo que el sistema
debera hacer.
- Particionamiento de equivalencia
Esta tcnica consiste en dividir un conjunto de
condiciones de prueba en grupos o conjuntos que
puedan ser considerados iguales por el sistema. Esta
- Tablas de decisin
Las tcnicas de particionamiento de equivalencia y
anlisis del valor frontera son aplicadas con frecuencia a
situaciones o entradas especficas. Sin embargo, si
diferentes combinaciones de entradas dan como
resultado diferentes acciones, resulta ms difcil usar las
tcnicas anteriores.
- Transicin de estados
La tcnica anterior (tabla de decisin) es particularmente
til cuando las combinaciones de condiciones de
entrada producen varias acciones. La tcnica de
transicin de estados se utiliza con sistemas en los que
las salidas son desencadenadas por cambios en las
condiciones de entrada, o cambios de estado.
b) Basadas en la estructura
Las pruebas estructurales son una aproximacin al diseo
de casos de prueba donde las pruebas se derivan a partir
del conocimiento de la estructura e implementacin del
software. Esta aproximacin se denomina a veces pruebas
de caja blanca.
- Pruebas de sentencia
El objetivo de las pruebas de sentencia es ir probando
las distintas sentencias a lo largo del cdigo. Si se
prueban todas y cada una de las sentencias ejecutables
del cdigo, habr una cobertura de sentencia total. Es
importante recordar que estas pruebas slo se centran
en sentencias ejecutables a la hora de medir la
cobertura. Es muy til el uso de grficos de flujo de
datos para identificar este tipo de sentencias, que se
representan mediante rectngulos.
- Pruebas de decisin
El objetivo de estas pruebas es asegurar que las
decisiones en un programa son realizadas
adecuadamente. Las decisiones son parte de las
- Pruebas de caminos
Las pruebas de caminos son una estrategia de pruebas
estructurales cuyo objetivo es probar cada camino de la
ejecucin independientemente. En todas las sentencias
condicionales, se comprueban los casos verdadero y
falso. En un proceso de desarrollo orientado a objetos,
pueden utilizarse las pruebas de caminos cuando se
prueban los mtodos asociados a los objetos.
- Adivinar errores
Las tcnicas basadas en experiencia usan la
experiencia de los usuarios y de los tcnicos de pruebas
para determinar las reas ms importantes de un
sistema y ejercitar dichas reas de forma que sean
consistentes con el uso que se espera que tengan.
- Pruebas exploratorias
Tcnicas de pruebas ms sofisticadas que se realizan
sobre la base del conocimiento y experiencia de los
tcnicos de pruebas; dicha base es un factor decisivo
para el xito de las pruebas.
a) Revisiones
Las revisiones son una tcnica esttica que consiste en
realizar un anlisis de un documento con el objetivo de
encontrar y eliminar errores.
- Walkthrough
Un walkthrough se caracteriza porque el autor del
documento bajo revisin va guiando al resto de
participantes a travs del documento exponiendo sus
ideas para conseguir un entendimiento comn y recoger
respuestas. Es especialmente til si los asistentes no
estn relacionados con el software, o no son capaces de
entender los documentos de desarrollo de software. En
las revisiones walkthrough se explica el contenido del
documento paso a paso hasta llegar a un consenso en
los cambios y en el resto de informacin. La reunin es
dirigida por los autores y a menudo est presente un
documentador, y para facilitar su ejecucin pueden
usarse escenarios y simulaciones para validar el
contenido.
- Revisin tcnica
Una revisin tcnica es una reunin que se centra en
conseguir consenso sobre el contenido tcnico de un
documento, por lo que es posible que sea dirigida por un
experto tcnico. Los expertos necesarios para una
revisin tcnica son, por ejemplo, responsables del
diseo y usuarios clave.
- Inspeccin
La inspeccin es el tipo de revisin ms formal. El
documento bajo inspeccin es preparado y validado
b) Anlisis esttico
El anlisis esttico, al igual que las revisiones, busca
defectos sin ejecutar el cdigo. Sin embargo, el anlisis
esttico se lleva a cabo una vez que se escribe el cdigo.
Su objetivo es encontrar defectos en el cdigo fuente y en
los modelos del software.
H. de gestin de pruebas
H. de gestin de requisitos
H. de gestin de incidencias
H. de gestin de configuracin
H. de revisin de procesos
H. de anlisis esttico
H. de modelado
c) Herramientas de modelado
Ayudan a validar modelos del sistema, por ejemplo,
validando la consistencia de los objetos en una base de
datos o encontrando inconsistencias y defectos. Estas
herramientas son de gran utilidad en el diseo de software.
H. de diseo de pruebas
H. de ejecucin de pruebas
Comparadores de pruebas
H. de seguridad
c) Herramientas de seguridad
Hay numerosas herramientas que protegen a los sistemas
de ataques externos, por ejemplo, los cortafuegos. Las
herramientas de pruebas de seguridad se utilizan para
probar la seguridad que tienen los sistemas, intentado
acceder a un sistema, por ejemplo. Tambin, se encargan
de identificar virus, simular ataques externos, detectar
intrusos, etc.
H. de diseo de pruebas
b) Herramientas de monitorizacin
Las herramientas de monitorizacin se utilizan para realizar
un seguimiento del estado del sistema en uso, con el
objetivo de conseguir avisos tempranos de los problemas y
de mejorar el servicio. Hay herramientas de monitorizacin
para servidores, redes, bases de datos, seguridad,
rendimiento, pginas web y uso de internet, y para
aplicaciones.
Actividades
Para que un usuario pueda realizar una transferencia a otro banco deber:
Flujos Alternos
FA1. El administrativo selecciona la actividad Fsicas
3.1 En el paso 3 del FB si el administrativo selecciona la categora Fsicas, el
sistema despliega como actividad solamente Fsicas y como rango de
edad solamente el Grupo 2.
3.2 El caso de uso contina en el paso 8 del FB
Resumen
http://www.inteco.es/file/XaXZyrAaEYfaXKiMJlkT_g
Aqu encontrar una gua completa de Validacin y Verificacin orientada a las
reas de proceso de CMMI. Esta gua fue elaborado por INTECO (Instituto
Nacional de Tecnologas de la Comunicacin) de Espaa.
h ttp://epf.eclipse.org/wikis/openupsp/openup_basic/disciplines/test,_0TkKQMlgE
dmt3adZL5Dmdw.html
Aqu hallar mayor informacin de la disciplina de pruebas segn RUP.
UNIDAD DE
APRENDIZAJE
TEMARIO
ACTIVIDADES PROPUESTAS
View name
Current script
Editor area
(showing
Java Script
Functional Test Editor) Functional Test
Projects view Script Explorer
1
2
1
2
3
1
1
2 Edite la direccin
URL de la
aplicacin web.
2
1
Script
PlaceOrder().click();
Mapa de
Objetos de
prueba
Privado
- Asociado con un solo script
- Automticamente se crea cuando se graba un
script
Compartido
- Asociado con ms de un script
- Automticamente se actualiza cuando se graba
un script
Mostrar ayudas
Ayudas de Script
Agregar Comandos Controlados por Datos
Agregar Puntos de Verificacin
Iniciar Aplicacin
Pausa/Reanudar Grabacin
Detener Grabacin
Aqu se muestra
una pgina con un
formulario de datos
cargados.
Figura 2.11. PV para verificar el ttulo de una pgina (valor de una propiedad especfica)
que tiene el formulario con datos cargados
De inmediato, realizar los pasos citados grabar para garbar un script de prueba
simplificado para probar una aplicacin de escritorio Java.
Inicio de grabacin
Grabacin de acciones
1. Pulse el signo (+) situado al lado de Bach para abrir la lista de CD que estn en
venta de dicho compositor y, a continuacin, pulse Violin Concertos.
6. En la ventana Hacer Pedido, escriba 1234 1234 1234 1234 en el campo nmero
de tarjeta y, a continuacin, escriba 12/12 en el campo fecha de expiracin.
Ahora, agregue comandos controladas por datos a fin de crear un pool de datos con
los datos procedentes de los objetos de la GUI.
Compositor
Artculo
Cantidad
NumTarjeta
TipoTarjeta
FechaExpiracion
Nombre
Direccion
CodPostal
Telefono
Puntos de verificacin
Importe
10. A continuacin, pulse Aceptar para cerrar el mensaje que confirma el pedido.
11. Para cerrar la aplicacin, pulse el smbolo X que aparece en el ngulo superior
derecho de la aplicacin ClassicsCD.
Finalizacin de la grabacin
2. Para ahorrar tiempo, copie los datos de la fila 0 de la agrupacin de datos en las
filas vacas que haya creado.
3. Pulse el botn derecho del ratn y seleccione Insertar punto de verificacin >
Punto de verificacin de datos.
La lnea de prueba Verify data in tree2 se aade al editor del script (despus de la
segunda lnea de prueba).
Actividades
1. A partir de la aplicacin de escritorio Java entregada en clase, realice los
siguientes procesos para un casos de uso:
a. Grabacin de un script
b. Reproduccin del script
c. Anlisis de resultados
Resumen
http://publib.boulder.ibm.com/infocenter/rfthelp/v8r1/index.jsp
En esta pgina encontrar informacin del entorno IBM RFT: gua de instalacin,
gua de aprendizaje, entre otros temas.
http://www.ibm.com/developerworks/ssa/rational/library/09/functionaltestertableo
bjects/#download
Este artculo muestra cmo usar IBM RFT para automatizar objetos ajustados
dentro de las celdas de una tabla HTML manteniendo las celdas especificadas
como referencia. Lo ayudar a automatizar operaciones con estos objetos.
http://www-01.ibm.com/support/docview.wss?uid=swg21213488
En esta pgina se describe la gestin de los objetos de prueba en el IBM RFT.
UNIDAD DE
APRENDIZAJE
TEMARIO
3.1. Tema 5: Introduccin al Rational Performance Tester
3.1.1. Arquitectura de Rational Performance Tester
3.1.2. Caractersticas y beneficios de Rational Performance Tester
ACTIVIDADES PROPUESTAS
Las pruebas de rendimiento pueden ayudar a reducir los costes del sistema,
determinando qu recursos del sistema, tales como los re cursos de memoria y
disco, son necesarios para ofrecer un rendimiento aceptable. Comprender los
requisitos mnimos permite tomar mejores decisiones sobre qu hardware y
software debe ser comprado para el despliegue de la aplicacin objetivo.
Editor de Prueba
Los informes en tiempo real estn disponibles durante la ejecucin de la prueba. Son
idnticos a los informes por defecto que se pueden acceder despus de la ejecucin
de pruebas. Puede seleccionar una de las pestaas, que contienen diversos informes,
desde la parte inferior del monitor de pruebas. Tal como se indica en la siguiente
figura.
Las pruebas de rendimiento con RPT pueden ser automatizadas. Para ello,
debe grabar los escenarios a probar, programar las pruebas y ejecutarlas a fin
de analizar los informes obtenidos segn las necesidades del equipo. Estos
procesos se detallan a continuacin con un caso prctico.
1. Arquitectura y Background
Funcionalidad del Cliente:
Validar usuario (Login)
Buscar en catlogo
Registrar una orden
2. Tecnologa
Desarrollado con herramientas IBM WebSphere
Front end, Frame-based application browser GUI
Back end, Base de Datos IBM DB2
3. Estructura de Datos
4. Perfiles de usuario:
Fin Agrega al
Agrega al carrito
carrito Compra
Fin Fin
Seleccionar
desde seccin
Especiales
Seleccionar
desde alguna
Categora
1
2
Ingrese al sistema con la cuenta por default. Puede crear una nueva
cuenta si lo desea, desde la opcin register for your own account here.
1. Seleccione File > New > Test Project para crear el proyecto que contendr las
pruebas de la aplicacin.
8. Edicin de Pruebas
En este punto, aprender a aadir puntos de verificacin y pool de datos a una
prueba. Los puntos de verificacin comprueban si se da el comportamiento
esperado durante una ejecucin. El pool de datos permite variar los valores de lo
registrado en la prueba.
1. Click derecho sobre la pgina a la cual agregar un punto de verificacin (PV) >
Verification Points > Enable Page Title VPs.
4. Ahora, importar un archivo CSV para crear un pool de datos. Para ello, desde la
seccin Datapools seleccione Add Datapool.
5. A continuacin, active el checkbox para crear un nuevo pool de datos. Luego, pulse
Finish.
6. Desde la ventana New Datapool ingrese un nombre para el nuevo pool de datos.
Luego, pulse Next.
El datapool importado
contiene los valores
para 8 usuarios: usuario
y password.
9. Programacin de Pruebas
La programacin de una prueba representa una carga de trabajo a fin de realizar
las pruebas de rendimiento automatizadas. Los pasos se describen a continuacin.
1. Seleccione File > New > Performance Schedule para programar una prueba.
2 3
1 2
1 2
3
4
2
1
3
9. Por ltimo, para agrupar los activos de prueba por tipo, seleccione el cono del
tringulo y seleccione Logical test navigator.
Resumen
http://publib.boulder.ibm.com/infocenter/rpthelp/v8r1m0/index.jsp
En esta pgina encontrar informacin del entorno IBM RPT: gua de
instalacin, gua de aprendizaje, entre otros temas.
http://agile.csc.ncsu.edu/SEMaterials/tutorials/rpt/index.html#section8_0
En esta pgina, hallar un ejercicio sobre prueba de rendimiento con RPT.
http://www.ibm.com/developerworks/ssa/rational/library/09/buildingscriptsinrati
onalperformancetester/index.html
En esta pgina, hallar un ejemplo de generacin de scripts slidos para
pruebas de confiabilidad en RPT.