TEMA 4 Flashcards
¿Qué son las pruebas de caja blanca?
Son pruebas estructurales basadas en la estructura interna del código.
¿Cuál es el objetivo de las pruebas de caja blanca?
Garantizar la ejecución de todas las partes internas del código.
¿Qué mide la complejidad ciclomática (CC)?
La complejidad lógica del código, contando caminos independientes.
¿Cómo se calcula la complejidad ciclomática?
CC = número de arcos - número de nodos + 2.
¿Qué representa un grafo de flujo de control (CFG)?
Todos los caminos posibles que el código puede seguir al ejecutarse.
¿Qué es un camino independiente?
Un camino que aporta nuevas sentencias o condiciones no ejecutadas anteriormente.
¿Qué debe hacerse con caminos imposibles de probar?
Refactorizar el código para hacerlos probables o eliminarlos.
¿Por qué es importante reducir la complejidad ciclomática?
Para facilitar el mantenimiento, reducir errores y simplificar pruebas.
¿Qué significa una complejidad ciclomática de 1?
Que no existen decisiones lógicas, solo un camino lineal de ejecución.
¿Cómo afectan estructuras como “if” y “while” a la CC?
Añaden caminos adicionales, aumentando la complejidad ciclomática.
¿De qué depende seleccionar caminos independientes en caja blanca?
De que aporten la cobertura de nuevas sentencias o condiciones no probadas.
¿Qué relación tiene la cobertura con la complejidad ciclomática?
Una alta cobertura implica ejecutar todos los caminos independientes definidos por la CC.
¿Por qué ejecutar todos los caminos independientes en pruebas?
Para asegurar que cada sección del código se haya probado al menos una vez.
¿Qué ventaja tienen las pruebas estructurales sobre las funcionales?
Detectan errores internos específicos que podrían ser ignorados por las funcionales.
¿Qué implica refactorizar para pruebas de caja blanca?
Modificar el código para permitir ejecutar caminos anteriormente imposibles.
¿Qué sucede si la complejidad ciclomática es alta?
Aumenta la dificultad de mantener, probar y comprender el código.
¿Cuál es el valor recomendado máximo de CC por método?
Generalmente se recomienda no superar un valor de 10 para mantener la calidad del código.