ejercicios tecnicas caja blanca parte i

Upload: ronnie-agreda

Post on 08-Oct-2015

191 views

Category:

Documents


8 download

DESCRIPTION

Ejercicio caja blanca

TRANSCRIPT

CAPITULO: TCNICAS DE DISEO DE PRUEBASComplejidad Ciclomtica de McCabe V(G)Mtrica que mide la complejidad esttica de un programa basada en su grafo de flujo de control. Mide los caminos linealmente independientes, como ndice de testabilidad y mantenibilidad.

V(G) = e n + 2p

Nmero de aristas: e Nmero de nodos: n Inspeccionadas: p (normalmente 1)

NOTA: Valores hasta 10 aceptables. Para valores superiores el cdigo debe ser reconstruidoEjemplo:El grafo tiene:1 parte independientesp = 114 nodosn = 1419 aristase = 19V(g) = 7

Ejercicio1: Dado el siguiente fragmento de programa en java:

Import java.ioPublic class Maximo{Public static void main (String args[]) throws IOException{bufferedReader entrada = new BufferedReader (newInputStreamReader(System.in)):

Int x,y,z,max;System.out.print(Introduce x,y,z);X=Integer.parseint (entrada.readLine());y=Integer.parseint (entrada.readLine());z=Integer.parseint (entrada.readLine());

if(x>y&&x>z)max=x;elseif(z>y)max=z;elsemax=y;system.out.println(El maximo es +max);}}

SE PIDEa) Calcular la complejidad ciclomtica de McCabe V(G)

Para calcular la complejidad ciclomtica de McCabe, lo primero que tenemos que hacer es dibujar el grado de flujo. Para esto seguimos pasos:

1. Sealamos en el cdigo los pasos para dibujar el grafo de flujo

Import java.ioPublic class Maximo{Public static void main (String args[]) throws IOException{bufferedReader entrada = new BufferedReader (newInputStreamReader(System.in)):

21Int x,y,z,max;System.out.print(Introduce x,y,z);X=Integer.parseint (entrada.readLine());y=Integer.parseint (entrada.readLine());z=Integer.parseint (entrada.readLine());

if(x>y && x>z)max=x;elseif(z > y)max=z;elsemax=y;

system.out.println(El maximo es +max);}}

2. Dibujamos el grafo de flujo calculamos la complejidad ciclomtica y determinamos los caminos independientes:

Calculamos la complejidad ciclomtica de McCabe:V(G) = e n + 2=

Por lo tanto identifiquemos los caminos independientes mirando el grafo de flujo:

b. Definir conjuntos de pruebas mnimo para alcanzar los siguientes criterios de cobertura:

COBERTURA DE SENTENCIAS (instruccin)Se trata de ejecutar con los casos de prueba cada sentencia a instruccin al menos una vez. Seleccionar los caminos a ejecutar:

COBERTURA DE DECISIONESEscribimos los casos suficientes para cada condicin tenga al menos un resultado verdadero y otro falso.

COBERTURA DE CONDICIONESSe trata de escribir los casos suficientes para que cada condicin de cada decisin adopte el valor verdadero y el falso al menos una vez.

Ejercicio 2: Dado el siguiente fragmento de programa en java:If(a>1) and (b>5) and (c length thenbiggest_dimension = widthif height > width thenbiggest_dimension = heightend_ifelsebiggest_dimension = lengthif height > length thenbiggest_dimension = heightend_ifend_if

A. 3B. 4C. 2D. 1

Ejercicio 5: Un termmetro mide la temperatura en grados solamente. Si la temperatura cae por debajo de 18 grados, la calefaccin est apagada. Se vuelve a encender cuando la temperatura alcanza 21 grados. Cules son los mejoresvalores en grados para cubrir todas las particiones de equivalencia?

A. 15, 19 y 25.B. 17, 18 y 19.C. 18, 20 y 22.D. 16, 26 y 32.

Ejercicio 6:Teniendo en cuenta la tabla siguiente decisin: Cul delos siguientes casos de prueba y resultados esperados son vlidos?

A. 23 aos en el seguro de la clase A, Premium es 70 y el exceso es 500. B. 51 aos en el seguro de la clase C, Premium es 100 y el exceso es 00. C. 31 aos en el seguro de la clase B, Premium es 70 y el exceso es 500. D. 43 aos en el seguro de la clase C, Premium es 100 y el exceso es 000.

Ejercicio 7:Un mayorista vende cartuchos de impresora. La cantidad mnima de pedido es de 5. Hay descuento del 20% de los pedidos de 100 o ms cartuchos. Se le ha pedido preparar casos de prueba utilizando distintos valores para las rdenes de cartuchosCul de los siguientes grupos contienen tres entradas de prueba que se generaran con Anlisis de Valor Lmite?

A. 5, 6, 20B. 4, 5, 80C. 4, 5, 99D. 1, 20, 100.