Tecnicas de Prueba Del Software
-
Upload
victor-manuel-gomez-munoz -
Category
Documents
-
view
221 -
download
0
description
Transcript of Tecnicas de Prueba Del Software
-
El ingeniero intenta construir el software partiendo de un concepto
Abstracto y llegando a una implementacin
Tangible
-
Objetivos de las pruebas
La prueba es el proceso de
ejecucin de un programa
con la intencin de descubrir un
error.
Nuestro objetivo es disear pruebas que sistemticamente saquen a la luz diferentes clases de errores, hacindolo con la menor cantidad de tiempo y de esfuerzo.
Una prueba tiene xito si descubre un
error no detectado
hasta entonces.
Nos quitan la idea que, normalmente, tenemos de que una prueba tiene xito si no
descubre errores..
Un buen caso de prueba es aquel
que tiene una alta
probabilidad de mostrar un error no descubierto
hasta entonces.
-
El ingeniero crea una serie de casos de prueba que intentan demoler el software construido
Las pruebas son uno de los pasos de la ingeniera del software que se puede ver (por lo menos, psicolgicamente) como destructivo en lugar de constructivo.
-
VERIFICACIN Y VALIDACIN (V &V) La verificacin se refiere al conjunto de actividades
que asegura que el software implementa adecuadamente una funcin especfica.
La validacin se refiere a un conjunto diferente de actividades que aseguran que el software construido se ajusta a lo requerimientos del cliente.
Bohem, lo define de otra forma: Verificacin Estamos construyendo el producto
correctamente? Validacin Estamos construyendo el producto
correcto?
-
Actividades de prueba de software Actividades de desarrollo
Anlisis
Diseo
Codificacin
Integracin
Mantenimiento
Doc. Requisitos
-
LAS PRUEBAS
comprueban los caminos lgicos del software proponiendo
casos de prueba que ejerciten conjuntos especficos de condiciones y/o bucles. Se puede examinar el
estado del programa en varios puntos para determinar si el estado real coincide con el esperado o mencionado.
DE LA CAJA BLANCA
DE LA CAJA NEGRA Se basa las pruebas sobre la interfaz del software operatividad del sistema
Se basa Es el minucioso examen de los detalles procedimentales (Cdigo
Fuente). Es diseada despus de tener el
cdigo fuente
-
La prueba en el contexto del ciclo de vida en espiral
-
LA PRUEBA DEL CAMINO BSICO Permite al
diseador de casos de prueba obtener una medida de la complejidad lgica de un diseo procedimental y usar esa medida como gua para la definicin de un conjunto bsico de caminos de ejecucin
Construcciones estructurales en forma de grafo de flujo: Segn-sea (Case) Secuencia Si-si-no Mientras Repetir-hasta- Segn Sea (If) (While) (Untii) (Case) Donde cada crculo representa una o ms sentencias, sin bifurcaciones, en LDP o cdigo fuente
-
Desde el punto de vista procedimental
Pruebas de alto nivel
Direccin del la prueba
Codificacin
Diseo
Requisitos
Prueba de unidad
Prueba de Integracin
-
Pruebas de unidad La prueba de unidad centra el proceso de
verificacin en la menor unidad del diseo del software(Mdulo). Aqu se prueban los caminos de control importantes, con el fin de descubrir errores dentro del mbito de un mdulo.
-
Prueba de Integracin Si todos funcionan bien
Por qu dudar de que no funcionen todos juntos?
La prueba de Integracin es una tcnica
sistemtica para construir la estructura del programa mientras que al mismo
tiempo, se llevan a cabo pruebas para detectar errores asociados con la
interaccin.
-
Pruebas de Regresin Cada vez que se aade un nuevo modulo
como parte de una prueba de integracin el software cambia.
La prueba de regresin es volver a ejecutar un subconjunto de pruebas que se han llevado a cabo anteriormente para asegurarse de que los cambios no han propagado efectos colaterales no deseados.
-
Prueba de Validacin La validacin puede definirse de muchas
formas, pero una simple definicin es que la validacin se consigue cuando el software funciona de acuerdo con las expectativas razonables del cliente.
-
Pruebas de Resistencia (Stress) La prueba de resistencia ejecuta un sistema de forma que demande recursos en cantidad, frecuencia o volmenes anormales. Por ejemplo: 1. incrementar las frecuencias de datos de entrada en un orden
de magnitud con el fin de comprobar cmo responden las funciones de entrada;
2. disear pruebas especiales que generen diez, interrupciones por segundo, cuando las normales son una o dos;
3. ejecutar casos de prueba que requieran el mximo de memoria o de otros recursos;
4. disear casos de prueba que puedan dar problemas en un sistema operativo virtual
-
PRUEBA DE ENTRONOS ESPECIALIZADOS
-
Pruebas Funcionales Son pruebas de caja negra. Slo interesan las entradas y salidas del elemento a
probar. No interesan aspectos de la implementacin. Distintos mtodos:
Particiones equivalentes. Anlisis de Valores lmite. Pruebas aleatorias.
-
Diagramas de Flujo Diagrama de Flujo
Representa la estructura y control del programa
Grafo de Flujo Representa el Flujo de control
lgico mediante notacin ilustrada
Cada circula es un Nodo y corresponde a una secuencia de cuadros de proceso y a un
rombo de decisin
camino 1: 1-11 camino 2: 1-2-3-4-5-10-1-11 camino 3: 1-2-3-6-8-9-10-1-11 camino 4: 1-2-3-6-7-9-10-1-11 Fjese que cada nuevo camino introduce una nueva arista. Cual es el nuevo camino?
-
La Depuracin La depuracin ocurre como consecuencia de una prueba efectiva.
Es decir, cuando un caso de prueba descubre un error, la depuracin es el proceso que provoca la eliminacin del error.
Aunque la depuracin puede y debe ser un proceso ordenado, sigue teniendo mucho de arte. Un ingeniero del software, al evaluar los resultados de una prueba, se encuentra frecuentemente con una indicacin sintomtica de un problema en el software. Es decir, la manifestacin externa de un error, y la causa interna del error pueden no estar relacionadas de una forma obvia. El proceso mental, apenas comprendido, que conecta un sntoma con una causa es la depuracin.
-
La Depuracin La depuracin no es una prueba, pero siempre ocurre como
consecuencia de la prueba. El proceso de depuracin siempre tiene uno de los dos resultados siguientes:
1. se encuentra la causa, se corrige y se elimina; 2. o no se encuentra la causa.
En este ltimo caso, la persona que realiza la depuracin debe sospechar la causa, disear un caso de prueba que ayude a confirmar sus sospechas y el trabajo vuelve hacia atrs a la correccin del error de una forma iterativa.
Durante la depuracin encontramos errores que van desde lo ligeramente inesperado (por ejemplo, un formato de salida incorrecto) hasta lo catastrfico (por ejemplo, el sistema falla, producindose serios daos econmicos o fsicos).
-
El proceso de la depuracin
-
Enfoques de la depuracin Depuracin por fuerza bruta es la ms comn y menos eficiente a
la hora de aislar la causa del error en el software. Aplicamos la depuracin por fuerza bruta cuando todo lo dems falla.
La vuelta atrs es un enfoque ms normal porque se puede usar con xito para pequeos programas. Partiendo del lugar donde se descubre el sntoma, se recorre hacia atrs el cdigo fuente hasta que se llega a la posicin de error. Pero a medida que aumenta el nmero de lneas del cdigo, el nmero de posibles caminos de vuelta se hace difcilmente manejable.
la depuracin eliminacin de causas se manifiesta mediante induccin o deduccin e introduce el concepto de particin binaria. Los datos relacionados con la ocurrencia del error se organizan para aislar las posibles causas. Se llega a una hiptesis de causa y se usan los datos anteriores para probar o revocar la hiptesis
-
TCNICAS DE PRUEBA DEL SOFTWARENmero de diapositiva 2FUNDAMENTOS DE LAS PRUEBAS Nmero de diapositiva 4VERIFICACIN Y VALIDACIN (V &V) Actividades de prueba de softwareLAS PRUEBASLa prueba en el contexto del ciclo de vida en espiral LA PRUEBA DEL CAMINO BSICODesde el punto de vista procedimental Pruebas de unidadPrueba de IntegracinPruebas de RegresinPrueba de ValidacinPruebas de Resistencia (Stress)Nmero de diapositiva 16Pruebas FuncionalesDiagramas de FlujoLa DepuracinLa DepuracinEl proceso de la depuracinEnfoques de la depuracinNmero de diapositiva 23