Pruebas de ruta y pruebas de ruta base en software con ejemplos
⚡ Resumen inteligente
Las pruebas de ruta base son una técnica de caja blanca que deriva casos de prueba a partir de las rutas lógicas a través de un programa, utilizando un gráfico de flujo de control y la complejidad ciclomática para encontrar el conjunto mínimo de rutas independientes.
¿Qué es la prueba de ruta en las pruebas de software?
La prueba de ruta es un método de prueba estructural que implica el uso del código fuente de un programa para encontrar todas las rutas ejecutables posibles. Ayuda a determinar todas las fallas que se encuentran dentro de un fragmento de código. Este método está diseñado para ejecutar todas las rutas o las seleccionadas a través de un programa de computadora.
Cualquier programa no trivial contiene múltiples rutas de ejecución posibles. Probarlas todas es difícil y requiere mucho tiempo, y la mayoría se superponen. Las pruebas de rutas base reducen esa redundancia al identificar el conjunto mínimo de rutas que aún ejecutan cada instrucción y cada bifurcación al menos una vez.
Pruebas de ruta básica en ingeniería de software
Prueba de ruta básica en ingeniería de software es una Blanco Box Pruebas Método en el que se definen casos de prueba en función de flujos o rutas lógicas que se pueden tomar a través del programa. El objetivo de las pruebas de rutas básicas es definir la cantidad de rutas independientes, de modo que la cantidad de casos de prueba necesarios se pueda definir explícitamente para maximizar la cobertura de la prueba.
In Ingeniería de softwareLa prueba de ruta básica implica la ejecución de todos los bloques posibles en un programa y logra la máxima cobertura de ruta con el menor número de casos de prueba. Es un método híbrido de pruebas de rama y métodos de prueba de ruta.
Un ejemplo sencillo hace que la idea sea más concreta.
El diagrama de flujo anterior contiene sentencias condicionales, por lo que el control puede llegar a la salida por más de una ruta. Se necesitan tres rutas independientes para cubrirlo:
- 1 ruta: 1,2,3,5,6, 7
- 2 ruta: 1,2,4,5,6, 7
- 3 ruta: 1, 6, 7
Cómo dibujar un diagrama de flujo de control
Cada paso de las pruebas de la ruta base depende del gráfico de flujo de control, por lo que conviene ser preciso en cuanto a cómo se construye.
- Nodo: Una secuencia de instrucciones que siempre se ejecutan juntas, representada como un círculo. Una secuencia de instrucciones sin bifurcación se reduce a un único nodo.
- Edge: Una transferencia de control de un nodo al siguiente, representada por una flecha. Las aristas son la única vía de transferencia de control.
- Nodo predicado: Un nodo que contiene una condición, con dos o más aristas que salen de él. Estos factores determinan el recuento de complejidad.
- Provincia: un área delimitada por aristas y nodos. El número de regiones más uno también es igual a la complejidad ciclomática.
Consideremos un módulo corto con dos decisiones:
if (a > b) { // node 1, predicate max = a; // node 2 } else { max = b; // node 3 } if (max > limit) { // node 4, predicate alert(); // node 5 } return max; // node 6
El grafo tiene 6 nodos y 6 aristas, lo que da V(G) = 6 – 6 + 2 = 2 según la fórmula de las aristas. El conteo de predicados da la misma respuesta más rápidamente: 2 decisiones más 1 equivalen a 3 caminos independientes a través de las dos ramas tomadas en conjunto. Utilice la forma que le resulte más fiable y compárela con la otra.
Dos reglas que previenen la mayoría de los errores. Primero, una condición compuesta como si (x > 0 && y > 0) Se consideran dos nodos de predicado, no uno, porque el cortocircuito genera una segunda decisión. En segundo lugar, un bucle aporta un nodo de predicado independientemente del número de iteraciones.
Pasos para la prueba de rutas básicas
Los pasos básicos involucrados en las pruebas de ruta básica incluyen
- Dibujar un gráfico de control (para determinar diferentes rutas del programa)
- Calcular Complejidad ciclomática (métricas para determinar el número de caminos independientes)
- Encuentre un conjunto básico de caminos
- Generar Casos de prueba para ejercitar cada camino
Ventajas y limitaciones de las pruebas de ruta base
Ventajas de las pruebas de ruta base
- Ayuda a reducir las pruebas redundantes.
- Centra la atención en la lógica del programa.
- Sustituye la selección arbitraria de casos de prueba por una base analítica.
- Los casos de prueba que ejercitan el conjunto de bases ejecutarán cada declaración en un programa al menos una vez.
Limitaciones de las pruebas de ruta base
- No puede encontrar el código que falta. Un requisito que nunca se implementó no tiene ruta definida, por lo que no se generará ninguna prueba para él. Las pruebas de ruta base deben combinarse con las pruebas basadas en requisitos.
- El número de rutas aumenta rápidamente. Los bucles anidados y las condiciones compuestas aumentan rápidamente la complejidad, y un módulo con V(G) superior a 20 se vuelve poco práctico de cubrir de esta manera.
- La cobertura no es sinónimo de exactitud. Ejecutar una ruta demuestra que el código se ejecuta, no que produce la respuesta correcta. Cada prueba aún necesita una aserción significativa.
- Rutas dependientes de los datos. Algunos caminos solo son accesibles con combinaciones de datos de entrada específicas que pueden ser difíciles o imposibles de construir.


