4. Pruebas de caja blanca Se aplican a unidades del programa relativamente pequeñas como las rutinas o las operaciones asociados con un objeto. El probador analiza el código y utiliza el conocimiento de la estructura de un componente para derivar los casos de prueba Se analiza el código para descubrir cuantos casos de son necesarios para garantizar que todas las instrucciones del programa se ejecuten al menos una vez durante la prueba
5. PRUEBA DEL CAMINO BÁSICO… Pasos para la prueba del camino básico 1. Dibujar el grafo de flujo 2. Calcular la complejidad ciclomática 3. Elegir un conjunto básico de trayectorias
8. PRUEBA DEL CAMINO BÁSICO… Criterios Los círculos son llamados NODOS y representan una o más sentencias sin bifurcaciones. Representan una o más acciones. Un solo NODO puede corresponder a una secuencia de CUADROS de proceso y a un ROMBO de decisión. Las flechas son llamadas ARISTAS y representan el flujo de control. Una ARISTA debe terminar en un NODO, incluso aunque este no represente ninguna secuencia procedimental Las áreas delimitadas por ARISTAS y NODOS se llaman REGIONES. Cuando contamos regiones incluimos el área exterior del grafo, contando como una REGIÓN más.
9. PRUEBA DEL CAMINO BÁSICO… Criterios Cada NODO que contiene una condición se denomina NODO PREDICADO. Se caracteriza porque 2 o más NODOS emergen de él. Si se encuentran CONDICIONES COMPUESTAS, la generación del grafo de flujo es más difícil. Una condición compuesta se da cuando aparecen 1 o más OPERADORES (OR, AND, NAND, NOR lógicos) en una SENTENCIA CONDICIONAL. Se crea un nodo aparte para cada una de las condiciones
10. PRUEBA DEL CAMINO BÁSICO… Ejemplo de descomposición de una condición compuesta
11. PRUEBA DEL CAMINO BÁSICO… Realizar el grafo de flujo del siguiente diagrama de flujo n1 > n2 no si n1 > n3 n2 > n3 si si no no Ma=n1 Ma=n3 Ma=n2 Ma=n3
12. n1 > n2 n2 > n3 r1 n1 > n3 r4 r2 r3 1. No. Regiones 4 2. V (G) = A – N + 2 = 12 -10 +2 = 4 3. V (G) = P + 1 = 3 + 1 = 4
13. Complejidad ciclomática El calculo de la complejidad ciclomática nos da la respuesta. Se puede calcular de 4 formas: 1. Por el número de regiones 2. V (G) = A – N + 2 A = No. de Aristas N = No. de nodos 3. V (G) = P + 1 P = No. nodos predicado 4. Por la matriz de conexión
15. Ejercicio: Desarrolla un programa para el siguiente problema y calcula la complejidad ciclomática del algoritmo. 1. Se tiene la producción total de toneladas de cereales (arroz, avena ,cebada, trigo) cosechadas durante cada mes del año anterior. Elaborar un programa que proporcione la siguiente información: a. El promedio anual de toneladas cosechadas. b. ¿Cuántos meses tuvieron una cosecha superior al promedio anual? c. ¿Cuántos meses tuvieron una cosecha inferior al promedio anual? d. ¿Cuál fue el mes en el que se produjeron mayor número de toneladas?