Glosario · Diseño de pruebas
Pruebas con tablas de decisión
En inglés: Decision table testing
También llamado: tabla de decisión, tablas de decisión, prueba de tabla de decisión
Definición
Técnica de diseño de pruebas que enumera combinaciones de condiciones y la acción que cada una debe provocar, para que cada regla de negocio tenga su prueba.
Las pruebas con tablas de decisión modelan la lógica de negocio que depende de una combinación de condiciones. Pones las condiciones como filas, cada combinación relevante de sus valores como columnas (reglas) y la acción esperada para cada regla. Cada columna se convierte en al menos un caso de prueba. Es la forma más fiable de asegurarte de que no se olvida ninguna combinación de una regla compleja.
Ejemplo: aprobación de un préstamo
Reglas: un solicitante se aprueba si tiene una puntuación crediticia de 700 o más y unos ingresos de al menos 40.000 $. Una puntuación de 700 o más con ingresos menores pasa a revisión manual. Los clientes existentes con una puntuación inferior a 700 también pasan a revisión. Todos los demás se rechazan.
Tres condiciones de sí/no dan 2 x 2 x 2 = 8 reglas:
| Condición / Acción | R1 | R2 | R3 | R4 | R5 | R6 | R7 | R8 |
|---|---|---|---|---|---|---|---|---|
| Puntuación crediticia >= 700 | S | S | S | S | N | N | N | N |
| Ingresos >= 40.000 $ | S | S | N | N | S | S | N | N |
| Cliente existente | S | N | S | N | S | N | S | N |
| Aprobar | X | X | ||||||
| Revisión manual | X | X | X | X | ||||
| Rechazar | X | X |
Escribirla obliga a hacer preguntas que el requisito no respondía con claridad. Por ejemplo, R5 y R7 pasan ambas a revisión, así que para un cliente existente con puntuación baja los ingresos no cambian nada. ¿Era intencionado, o una puntuación baja con ingresos bajos debería rechazarse incluso para clientes existentes? La tabla hace visible la pregunta para que se pueda confirmar con el product owner antes de probar.
Reducir la tabla
Cuando una condición no afecta al resultado, las reglas se pueden fusionar usando “-” para “no importa”. R1 y R2 aprueban ambas independientemente de si es cliente o no, así que se reducen a una sola regla: puntuación S, ingresos S, cliente -. Reducir la tabla disminuye las pruebas, pero mantén al menos una prueba por cada camino de acción distinto.
Combinarla con otras técnicas
Cada condición sigue teniendo valores límite. “Puntuación >= 700” debe probarse con 699 y 700, e “ingresos >= 40.000 $” con 39.999 $ y 40.000 $. Usa la tabla de decisión para cubrir las combinaciones y el análisis de valores límite para elegir los valores concretos.
Cuándo usarla
Las tablas de decisión encajan con reglas de varias condiciones que interactúan: precios y descuentos, elegibilidad, permisos, cotizaciones de seguros, impuestos. Con muchas condiciones, la tabla crece como 2^n, así que agrupa condiciones, reduce las irrelevantes o pasa al pairwise testing cuando se trata de opciones de configuración independientes.