Una ruta de decisión a decisión (o ruta DD ) es una secuencia de ejecución (generalmente mediante un diagrama de flujo que representa un programa ) entre dos decisiones. Las versiones más recientes del concepto también incluyen las decisiones mismas en sus propias rutas DD.

Definición
En el artículo de Huang de 1975, [ 1 ] una ruta de decisión a decisión se define como una ruta en el diagrama de flujo de un programa tal que se cumplen todas las siguientes condiciones (citando del artículo):
- Su primera arista constituyente emana de un nodo de entrada o de una caja de decisión;
- Su último borde constituyente termina en una caja de decisión o en un nodo de salida; y
- No hay casillas de decisión en el camino, excepto las que se encuentran en ambos extremos.
Los libros de texto más recientes de Jorgensen lo reformulan en términos del grafo de flujo de un programa (llamado "grafo de programa" en ese libro de texto). [ 2 ] Primero definamos algunas nociones preliminares: cadena y cadena maximal. Una cadena se define como una ruta en la que:
- Los nodos inicial y terminal son distintos, y
- Todos los nodos interiores tienen grado de entrada = 1 y grado de salida = 1.
Una cadena máxima es una cadena que no forma parte de una cadena mayor.
Una ruta DD es un conjunto de nodos en un grafo de programa tal que se cumple una de las siguientes condiciones (citando y manteniendo la numeración de Jorgensen, con comentarios añadidos entre paréntesis): [ 2 ]
- Consta de un único nodo con grado de entrada = 0 (nodo inicial).
- Consta de un único nodo con grado de salida = 0 (nodo terminal).
- Consiste en un único nodo con grado de entrada ≥ 2 o grado de salida ≥ 2 (puntos de decisión/fusión).
- Consta de un único nodo con grado de entrada = 1 y grado de salida = 1
- Es una cadena máxima de longitud ≥ 1.
Según Jorgensen (2013), en Gran Bretaña y en la literatura ISTQB , la misma noción se denomina secuencia de código lineal y salto (LCSAJ). [ 2 ]
Propiedades
De la última definición (de Jorgensen) podemos concluir lo siguiente:
- Cada nodo en un grafo de flujo de un programa pertenece a una ruta DD.
- Si se recorre el primer nodo de una ruta DD, entonces también se recorrerán todos los demás nodos de esa ruta.
- El grafo de ruta DD se utiliza para encontrar rutas independientes para realizar pruebas.
- Cada instrucción del programa se ha ejecutado al menos una vez.
Pruebas de ruta DD
Según el libro de texto de Jorgensen de 2013, las pruebas de ruta DD son el método de prueba basado en código más conocido, incorporado en numerosas herramientas comerciales. [ 2 ]
Las pruebas de ruta DD también se denominan pruebas C2 o cobertura de ramas . [ 3 ] [ 4 ]
Véase también
- Bloque básico
- Pruebas de ruta base y sus artículos complementarios
- Cobertura de código
- Pruebas de caja blanca
Referencias
- ↑ Huang, JC (septiembre de 1975). "Un enfoque para la prueba de programas". Computing Surveys . 7 (3): 118– 119. doi : 10.1145/356651.356652 . La definición que se da allí cita: "Sistema de verificación automatizada de Fortran Nivel 1: guía del usuario, Proyecto de Validación de Programas, General Research Corp., octubre de 1974".
- 1 2 3 4 Paul C. Jorgensen (2013). Pruebas de software: Un enfoque artesanal, cuarta edición . CRC Press. págs. 136–137 . ISBN 978-1-4665-6068-0.
- ↑ Judith A. Clapp; Saul F. Stanten; WW Peng; DR Wallace; Deborah A. Cerino; Roger J. Dziegiel Jr. (1995). Control de calidad, errores y análisis de software . William Andrew. págs. 347–348 . ISBN 978-1-4377-4484-2.
- ↑ JC Huang (2009). Detección de errores de software mediante pruebas y análisis . John Wiley & Sons. págs. 164-165 . ISBN 978-0-470-46405-2.
Enlaces externos
- https://www.eecs.yorku.ca/course_archive/2011-12/W/4313/slides/11-Paths.pdf
- Pruebas de software
- Esbozos de ingeniería de software