Beruflich Dokumente
Kultur Dokumente
Pruebas funcionales
Las tcnicas de prueba de comportamiento, tambin llamadas funcionales o de caja negra, prueban el comportamiento observable exterior del sistema. Este tipo de pruebas adoptan la perspectiva del usuario. Los casos de prueba pueden derivarse de los requerimientos, especificados en distintos niveles de abstraccin. Ventajas:
Pueden planificarse en forma temprana Ayudan a comprender los riesgos del proyecto No requieren conocimiento de las estructuras internas
Pruebas funcionales
Caractersticas
Se utiliza la especificacin del componente. El componente se ve como una Caja Negra. Se estudia el comportamiento a partir de entradas y salidas.
Pruebas funcionales
Tcnicas de prueba funcional:
Particin equivalente Anlisis de valores lmite Basados en casos de uso Tablas de decisin Transicin de estados Combinacin de pares (pairwise)
Pruebas funcionales
Problema del programa Triangulo
Definido por Gerald Weimberg y usado desde 1969. Fue publicado por Glenford Myers en el primer libro sobre prueba de software: The art of software testing en 1979. Lee tres nmeros (originalmente de una tarjeta perforada) y los interpreta como los lados de un tringulo. El programa luego indica si se trata de un triangulo escaleno, issceles o equilatero.
Pruebas funcionales
Posible solucin:
1. Caso vlido para equiltero. 2. Caso vlido para escaleno. 3. Tres casos vlidos para issceles cambiando los lados iguales. 4. Casos para uno, dos y tres lados cero. 5. Caso para un lado negativo. 6. Caso para cuando la suma de dos lados es igual al tercero y tres permutaciones. 7. Caso para cuando la suma de dos lados es menor al tercero y tres permutaciones. 8. No enteros. 9. Nmero de incorrecto de valores, pocos o demasiados.
Pruebas funcionales
1. {3,4,5} 2. {10,10,10} 3. {3,3,4; 2,6,6; 7,9,7} 4. {0,1,1; 2,0,2; 3,2,0; 0,0,9; 0,8,0; 11,0,0; 0,0,0} 5. {3,4,-2} 6. {1,2,3; 2,5,3; 7,4,3} 7. {1,2,4; 2,6,2; 8,4,2} 8. {N,2,3} 9. {2,4; 4,3,3,6}
Pruebas funcionales
Cuando se disean casos de prueba no podemos darnos el lujo de probar todas las combinaciones posibles. Es necesario contar con un mtodo para seleccionar unos pocos casos de prueba efectivos, que sean representativos del resto del universo posible. La particin de equivalencia y el anlisis de valores lmite son las tcnicas ms utilizadas.
Particin equivalente
Particin equivalente
Se basa en dos consideraciones:
Se debe dividir el dominio de entrada en clases de datos (clases de equivalencia). Se deben crear casos de prueba que descubran clases de errores. Se debe minimizar el nmero total de casos de prueba.
Dos pasos
Identificar las clases de equivalencia. Identificar los casos de prueba.
Particin equivalente
Identificar Clases de Equivalencia (1)
Se examina cada condicin de entrada y se divide en dos o ms grupos. Se identifican dos tipos de clases:
Clases de equivalencia vlidas Clases de equivalencia no vlidas
Condicin de entrada Clases de equivalencia vlidas Clases de equivalencia no vlidas
Particin equivalente
Identificar Clases de Equivalencia (1)
Proceso heurstico (guas):
Rango de valores: una clase vlida y dos no vlidas. Nmero de valores: una clase vlida y dos no vlidas Conjunto de valores de entrada: tantas clases vlidas como valores y una no vlida. Situacin que debe ocurrir: una clase vlida y una no vlida. Si se cree que no todos los elementos de la case se tratan igual, dividir en subclases.
Particin equivalente
Ejemplo: tabla de clases de equivalencia
Programa que suma dos enteros de uno o dos dgitos Entrada Primer nmero Clases vlidas -99 a 99 Clases no vlidas >99 <-99 >99 <-99
Particin equivalente
Identificacin de los casos de prueba (2)
Asignar un nmero nico a cada clase de equivalencia. Escribir un caso que cubra tantas clases vlidas no incorporadas como sea posible hasta que se cubran todas las clases de equivalencia vlidas. Escribir un caso que cubra una sola clase no vlida no incorporada hasta que se cubran todas las clases de equivalencia no vlidas.
Particin equivalente
Para aplicar la tcnica no solo deben considerarse los campos individualmente, sino todas los aspectos de la especificacin y acciones que puede realizar el usuario.
27
Solo por envo rpido Sin costo Preferencia cliente Revisin previa
S S N S
N N S S
S N N N
N N S N
28
30
32
Preparando bebida
34
Lista de acciones
Devuelve moneda Pitido Mensaje espera Abre puerta Cierra puerta
Lista de eventos
La tabla se construye en base a la combinacin de estados y eventos. Ciertas combinaciones estado evento producen acciones.
37
38
41
5 x 4 x 3 x 2 = 120 combinaciones. Se pueden configurar todas las plataformas? Cada combinacin de plataforma debe repetirse para todas las pruebas de dominio?
42
43
46