Hsalas7

Páginas: 7 (1742 palabras) Publicado: 13 de abril de 2011
Introducción al Proceso de Pruebas.
Javier Gutiérrez / javierj@us.es

Introducción al proceso de pruebas
Objetivo: repasar las ideas principales sobre las pruebas del software y, en concreto, las que usaremos para probar casos de uso.

1

Índice
1. 2. 3. 4. 5. Introducción a las pruebas. Un resumen del proceso de prueba. Niveles de prueba. Pruebas de casos de uso. Automatización depruebas.

1. Introducción a las pruebas.

2

Introducción a las pruebas
Ariane 5. Lanzado por primera vez el 4 de junio de 1996. Ariane 5. 36.7 segundos después explotó.

Motivo: Fallo software. La programación no se había probado lo suficiente.

Introducción a las pruebas
Sistemas software: Ingeniería de Software. • Mayor tamaño. • Mayor complejidad. • Menor tiempo de desarrollo. • Mayorcalidad.
Un reto a la

Pruebas: • Más importancia y protagonismo día a día. • Garantizan la calidad del software. • Garantizan la satisfacción de los requisitos. • Ahorran tiempo y recurso en el desarrollo. • Su objetivo: localizar, para subsanarlas, el mayor número de deficiencias lo antes posible.

3

Introducción a las pruebas
Definición de prueba:
Software testing consists of thedynamic verification of the behaviour of a program on a finite set of test cases […]. Dynamic verification means that testing always implies executing the program on (valued) inputs.

Fuente: SWEBOK 2004

Introducción a las pruebas
Definición de prueba:
1

Verificación dinámica del comportamiento del software a partir de un conjunto finito de casos de prueba. Validación y Verificación dosconceptos muy relacionados:
2

Validación: proceso de evaluar un sistema o componente durante o al final del proceso de desarrollo para determinar si satisface los requisitos especificados. Verificación: proceso de evaluar un sistema o componente para determinar si los productos de una determinada fase satisfacen las condiciones impuestas al comienzo de la fase. No implican ejecución de código.4

Introducción a las pruebas
Definición de prueba:
Verificación dinámica del comportamiento del software a partir de un conjunto finito de casos de prueba. Para probar un programa tenemos que ejecutarlo. La prueba tiene un límite.

No vale ejecutar el programa de cualquier manera.

Introducción a las pruebas
Una prueba consta, al menos, de tres elementos:
2

3

1

5 Introducción a las pruebas
Veamos un ejemplo sencillo:

¿Funciona el teléfono?.
Valores de prueba 123-45-67-89 Acciones 1. Descolgar auricular. 2. Marcar número de Pepote. 3. Esperar contestación. Resultado esperado (Pepote): “Digameee”.

Introducción a las pruebas
Veamos otro ejemplo sencillo:
¿Me está bien esta camisa?
Valores de prueba Mi cuerpo. Acciones 1. Ponerme la camisa. 2.Abrochármela. 3. Moverme un poco. 4. Mirarme al espejo. Cuidado con la etiqueta o con arrugarla por si hay que devolverla Resultado esperado Elegancia y confort.

6

Introducción a las pruebas
¿Qué casos de prueba podemos escribir?.
public int suma(int a, int b) { return a + b; } ??? Suma(a, b) ???
Valores de prueba Acciones Resultado esperado

Los casos de prueba son finitos (y cuantos menos,mejor).

Los casos de prueba buscan errores, queremos el menor número que encuentre los máximos errores.

Introducción a las pruebas
¿Qué casos de prueba podemos escribir?.
public int suma(int a, int b) { return a + b; } 0, 0 0, b = no 0 3, 4 -2, -8 -3, 6 Integer.MAX_V ALUE, 6 Suma(a, b) Suma(a, b) Suma(a, b) Suma(a, b) Suma(a, b) Suma(a, b) 0 b 7 -10 3 -2147483643
Valores de prueba AccionesResultado esperado

Y algunas permutaciones más.

7

Características de una buena prueba
• Ha de tener una alta probabilidad de encontrar un fallo. Cuanto más, mejor. • No debe ser redundante. Si ya funciona, no lo probamos más. • Debe ser la “mejor de la cosecha”. Si tenemos donde elegir, elegimos la mejor. • No debería ser ni demasiado sencilla ni demasiado compleja. Si es muy sencilla no...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS