Está en la página 1de 28

1

INGENIERA DE
SOFTWARE II

Pruebas de Software
Contenido:
Introduccin
Enfoque estratgico

1.
2.
a.
b.
c.
d.

3.
4.
5.
6.
7.
8.

Verificacin y Validacin
Organizacin
Visin General
Criterios para completar las pruebas

Prueba de software convencional


Prueba para software orientado a objeto
Prueba para webapps
Pruebas de validacin
Pruebas de sistema
Depuracin

Pruebas de Software
1.

Introduccin

Una estrategia de prueba de software proporciona una gua que


describe los pasos que deben realizarse como parte de la prueba,
cundo se planean? Cundo se ejecutan? Cunto esfuerzo, tiempo y
recursos requieren?
Deben ser flexibles para promover su uso.
Deben ser rgidas para alentar la planificacin razonable y gestin del
proyecto.
Es un conjunto de actividades que pueden planearse por adelantado y
realizarse de manera sistemtica.

Pruebas de Software
2. Enfoque Estratgico
Caractersticas Generales
a. Para realizar una prueba efectiva, debe realizar revisiones
tcnicas efectivas
b. La prueba comienza en los componentes y opera hacia afuera,
hacia la integracin de todo el sistema de cmputo
c. Diferentes tcnicas de prueba son adecuadas para distintos
enfoques de ingeniera de software y en diferentes momentos en
el tiempo
d. Las pruebas las realiza el desarrollador del software, y para
proyectos grandes, un grupo de pruebas independiente
e. Prueba y depuracin son actividades diferentes, pero la
depuracin debe incluirse en cualquier estrategia de prueba

Pruebas de Software
2.

Enfoque Estratgico - Verificacin y Validacin.

La prueba de software es un elemento de un tema que usualmente

se conoce como Verificacin y Validacin (V&V).


La verificacin se refiere al conjunto de tareas que garantizan que el
software implementa correctamente una funcin especfica.
La validacin es un conjunto diferente de tareas que aseguran que el
software que se construye sigue los requerimientos del cliente.
Incluyen actividades de SQA: revisiones tcnicas, auditoras de

calidad y configuracin, monitoreo de rendimiento, simulacin,


estudio de factibilidad, revisin de documentacin, revisin de base
de datos, anlisis y algoritmos, pruebas de desarrollo, de usabilidad,
calificacin, aceptacin e instalacin.

Pruebas de Software
Enfoque Estratgico - Organizacin de las pruebas del software.

2.

El desarrollador de software es responsable de:

Probar las unidades individuales o componentes


b. Asegurarse que cada una desempea la funcin para la cual se
realiz
c. Puede realizar Pruebas de Integracin
Grupo de Prueba Independiente (GPI)
a. Remueve problemas que el constructor no identific
b. Remueven el conflicto de intereses que pudiese presentarse
c. Se les paga por encontrar errores
d. El desarrollador y el GPI, interactan
e. Es parte del equipo de proyecto de desarrollo del software
a.

Pruebas de Software
2.

Enfoque Estratgico - Visin General

Pruebas de Software
2.

Enfoque Estratgico - Visin General

Pruebas de Software
2.

Enfoque Estratgico - Criterios para completar las pruebas.

Cundo terminan las pruebas ?


Respuesta:

Nunca se termina de probar, la carga simplemente


pasa del desarrollador al usuario final.

La ingeniera de software de salas limpias: sugiere el uso de

estadsticas que ejecutan pruebas derivadas de una muestra


estadstica de las posibles ejecuciones de un programa.
El uso del modelado estadstico y la teora de la confiabilidad del

software se utilizan para predecir cundo estn completas las


pruebas.

10

Pruebas de Software
3. Prueba de Software Convencional.
Visin incremental de las pruebas, comenzando con las unidades de
programa individuales, avanza hacia pruebas de integracin y terminan
con pruebas del sistema construido.

3.1. Prueba de Unidad


Enfoca los esfuerzos de verificacin en la unidad mas pequea del
diseo del software: el componente o mdulo de software.
La interface del mdulo se prueba para garantizar que los datos fluyan
de manera adecuada hacia y desde la unidad de software. Se
examinan las estructuras de datos locales para asegurar su
almacenamiento e integridad.

11

Pruebas de Software
3.1. Prueba de Unidad

12

Pruebas de Software
3.2. Pruebas de Integracin Descendente
Es un enfoque incremental a la construccin de la arquitectura.
Integracin primero en profundidad.

M1
M2
M5

M3
M6

M7

M8
La ejecucin de las pruebas tendra este orden:
M1, M2, M5,M8, M6, M3,M7, M4.

M4

13

Pruebas de Software
3.2. Pruebas de Integracin Ascendente
Comienza con la construccin y la prueba con mdulos atmicos (es
decir, por componentes en los niveles inferiores dentro de la estructura
del programa)

Ma
D1
D11

D2
D12
D121
D1211

Mb
D21

D22
D221

D3
D222

D31
D32

Grupo 2.

Grupo 1.

Mc

14

Pruebas de Software
3.2. Pruebas de Integracin Regresin
Es la nueva ejecucin de algn subconjunto de pruebas que ya se
realizaron a fin de asegurar que los cambios no propagaron efectos
colaterales no deseados.
Ayudan a garantizar que los cambios no introducen comportamiento no
planeado o errores adicionales.
Clases de pruebas:
Muestra representativa de pruebas que ejercitar todas las funciones
del software
Pruebas adicionales enfocadas a las funciones del software que
probablemente resulten afectadas por el cambio
Pruebas que se enfocan en los componentes del software que
cambiaron

15

Pruebas de Software
3.2. Pruebas de Integracin Humo
Es un enfoque de prueba de integracin que se usa cuando se
desarrolla software de producto.
Se disea como mecanismo de ritmo para proyectos crticos en el
tiempo, permitiendo valorar el proyecto frecuentemente.
Incluye las siguientes actividades:
Construccin. Los componentes de software se integran.
Descubrir errores paralizantes. Pruebas para exponer errores que
evitarn la adecuada construccin
Integracin entre construcciones.
Beneficios:
Minimiza el riesgo de integracin
Mejora la calidad del producto final
Simplifica el diagnstico y correccin de errores
Facilidad para valorar el progreso

16

Pruebas de Software
3.2. Pruebas de Integracin Productos del trabajo de las pruebas de
Integracin.
Especificacin de pruebas: Es el plan global de integracin del
software y descripcin de las pruebas especficas.
El producto del trabajo incorpora:
1. Un plan de prueba
2. Un procedimiento de prueba.
La prueba se divide en:
1. Fases y
2. Construcciones
Que abordan caractersticas:
1. Funcionales y
2. De Comportamiento

17

Pruebas de Software
3.2. Pruebas de Integracin Productos del trabajo de las pruebas de
Integracin.
Criterios y pruebas que se aplican a todas las fases:
1. Integridad de la interface (interna y externa)
2. Validez funcional. Errores funcionales ocultos
3. Contenido de la informacin. Errores asociados con las
estructuras de datos.
4. Rendimiento. Diseadas para verificar los lmites del rendimiento
establecidos durante el diseo del software.

18

Pruebas de Software
4.

Pruebas para software Orientado a Objeto Unidad de Contexto


OO

La prueba de Clase para software OO, es el equivalente de la prueba


de unidad para software convencional. La diferencia radica, que tiende
a enfocarse sobre el detalle de un mdulo y en los datos que fluyen a
travs de la interface del mdulo.
La prueba de clase la dirigen las operaciones encapsuladas por la
clase y el comportamiento de estado de esta.

19

Pruebas de Software
4.

Pruebas para software Orientado a Objeto Prueba de


Integracin en el contexto OO.
Prueba basada en Hebra. Integra el conjunto de clases requeridas

para responder a una entrada o evento para el sistema.


Prueba basada en uso. Comienza por la construccin del sistema

al probar dichas clases, llamadas clases independientes, que usan


muy pocas clases servidor.
Prueba de grupo. El grupo de clases colaboradoras se ejercita

para disear casos de prueba que intentan descubrir errores en las


colaboraciones.

20

Pruebas de Software
5.

Prueba para Webapps

a.

Revisin del modelo del contenido, para detectar errores


Revisin del modelo de interface, asegurar aplicacin de casos de
uso.
Revisin del modelo de diseo, detectar errores de navegacin
Revisin interface de usuario, para detectar errores en
mecanismos de presentacin o navegacin.
A cada componente funcional se le aplica una prueba de unidad
Se prueban en varias configuraciones ambientales diferentes o
dentro de su ambiente.
Realizacin de pruebas de rendimiento
Realizacin de pruebas de seguridad
Prueba final: con una poblacin de usuarios controlada y
monitoreada.

b.
c.

d.
e.
f.
g.
h.
i.

21

Pruebas de Software
6.

Prueba de Validacin.

Comienzan al terminar las pruebas de integracin, cuando se revisaron


los componentes individuales.
Aplica para todo tipo de pruebas de software.
Las pruebas se enfocan en las acciones visibles para el usuario y las
salidas del sistema reconocibles por el usuario.
La validacin es exitosa cuando el software funciona cumpliendo con
las expectativas razonables del cliente.

22

Pruebas de Software
6.

Prueba de Validacin Criterios de Pruebas de Validacin.

La validacin del software, se logra a travs de una serie de pruebas


que demuestran conformidad con los requerimientos.
El plan de pruebas indica las pruebas a ejecutar y el procedimiento de
los casos especficos que se disean para garantizar que:
a. Satisfacen los requerimientos de funcionamiento
b. Logran todas las caractersticas de comportamiento
c. Incluyen el contenido y presentado de manera adecuada, logrando
todos los requerimientos de rendimiento.
d. La documentacin es correcta y satisfacen la facilidad de uso

23

Pruebas de Software
6.

Prueba de Validacin Revisin de la configuracin

El objetivo es garantizar que todos los elementos de la configuracin


del software se desarrollaron de manera adecuada.
Tambin llamada auditora.

24

Pruebas de Software
6.

Prueba de Validacin Pruebas Alfa y Beta.

Se utiliza para descubrir errores que el usuario final es capaz de


encontrar.
Prueba Alfa. Se lleva a cabo en el sitio del desarrollador por un grupo
representativo de usuarios finales. Se realizan en un ambiente
controlado. El desarrollador est presente.
Prueba Beta. Se realiza en uno o ms sitios del usuario final. El
desarrollador no est presente. El cliente registra los problemas que
se encuentran durante la prueba y los reporta al desarrollador.

25

Pruebas de Software
6.

Prueba del Sistema

El software incorpora otros elementos del sistema (hardware,


personas, datos) y se lleva a cabo una serie de pruebas de integracin
y validacin del sistema.

Soluciones a potenciales problemas:


a. Disear rutas de manejo de error
b. Pruebas que simulen datos errneos
c. Registrar resultados de las pruebas
6. Participar en planificacin y diseo de pruebas

26

Pruebas de Software
6.

Prueba del Sistema Pruebas de Recuperacin

Prueba que forza al software a fallar en varias formas que verifica que
la recuperacin se realice de manera adecuada.
Se evala:
a. El Reinicio
b. Los mecanismos de puntos de verificacin
c. La recuperacin de los datos
d. La reanudacin de las correcciones
e. Tiempo medio de reparacin

27

Pruebas de Software
6.

Prueba del Sistema Pruebas de Seguridad

Intenta verificar que los mecanismos de proteccin que se construyen


en un sistema lo protegern de cualquier acceso o penetracin
inapropiada.
6.

Prueba del Sistema Pruebas de Esfuerzo

Ejecuta un sistema en forma que demanda recursos en cantidad,


frecuencia o volumen anormales. Variacin Prueba de Sensibilidad.

28

Pruebas de Software
6.

Prueba del Sistema Pruebas de Rendimiento

Se disea para poner a prueba el rendimiento del software en tiempo


de corrida, dentro del contexto de un sistema integrado. Ocurre a lo
largo de todos los pasos del proceso de prueba.
6.

Prueba del Sistema Pruebas de Despliegue

En ocasiones llamada prueba de configuracin, ejercita el software en


cada entorno en el que debe operar.
Examina todos los procedimientos de instalacin y el software de
instalacin especializado.

También podría gustarte