Ejemplos Complejidad de McCabe y Pruebas
Ejemplos Complejidad de McCabe y Pruebas
Ejemplos Complejidad de McCabe y Pruebas
Pruebas estructurales
1
Diagramas de grafos
• Sentencias
• Decisiones / condiciones
• Caminos
2
Pasos a seguir
1. Crear un grafo que represente el código a probar.
2. Calcular la complejidad ciclomática o de McCABE del grafo
obtenido.
3. Determinar tantos caminos (recorridos del grafo) como la
complejidad ciclomática calculada.
4. Generar un caso de uso por cada camino, determinando sus datos
de entrada y los resultados esperados.
5. Lanzar una ejecución del programa por cada caso de uso y
comparar los resultados obtenidos con los esperados para
comprobar la corrección del código.
3
4
Secuencia
5
Condición
6
Selección múltiple
7
Iteración
8
Do (Iteración)
9
And (estructura compuesta)
10
Or (Estructura compuesta)
11
Consejos
12
Complejidad ciclomática
• La complejidad ciclomática es una métrica del software que
proporciona una medida cuantitativa de la complejidad lógica de un
programa . En el contexto del método de prueba del camino básico, la
complejidad ciclomática establece el número de caminos
independientes del conjunto básico de caminos de ejecución de un
programa, y por lo tanto, el número de casos de prueba que se deben
ejecutar para asegurar que cada sentencia se ejecuta al menos una
vez.
• La complejidad ciclomática V(G) puede calcularse de tres formas:
14
El valor de V(G) nos da el número de caminos independientes del
conjunto básico de un programa. Un camino independiente es
cualquier camino del programa que introduce, por lo menos, un nuevo
conjunto de sentencias de proceso o una condición. En términos del
diagrama de flujo, un camino independiente está constituido por lo
menos por una arista que no haya sido recorrida anteriormente a la
definición del camino.
15
ENTORNOS DE DESARROLLO. UNIDAD 3.
1
ENTORNOS DE DESARROLLO. UNIDAD 3.
2
ENTORNOS DE DESARROLLO. UNIDAD 3.
Para alcanzar los conjuntos de pruebas mínimo para alcanzar los criterios de cobertura,
tenemos:
- Cobertura de sentencias.
- Cobertura de decisiones.
- Cobertura de condiciones.
- Cobertura de decisión / condición
- Criterio de condición múl,ple.
Nota: Para el examen voy a pedir sólo la Cobertura de sentencias. Pongo el resto para que
sepáis que existen.
En el ejemplo, para este caso, sólo va a ser necesario hacer la cobertura de los caminos 1, 2 y 4.
¿Por qué no él 3?
Si tacháis los nodos que se recorren en el camino 1, en el 2 y en el 4, veréis que habréis tachado
todos los nodos.
Como habéis tachado todos, quiere decir que ya habéis hecho la cobertura de todos los posibles
caminos.
El número mínimo de pruebas a realizar va a coincidir con el número de caminos necesarios para
hacer la cobertura.
Para hacer los casos de prueba, para cada uno de los caminos, habrá que poner el valor de las
variables adecuado para que se puedan cumplir esos caminos.
3
ENTORNOS DE DESARROLLO. UNIDAD 3.
4
ENTORNOS DE DESARROLLO. UNIDAD 3.
5
ENTORNOS DE DESARROLLO. UNIDAD 3.
6
ENTORNOS DE DESARROLLO. UNIDAD 3.
7
ENTORNOS DE DESARROLLO. UNIDAD 3.
8
ENTORNOS DE DESARROLLO. UNIDAD 3.