27 May
27May

Derivar casos de prueba efectivos es una de las habilidades más valiosas en el mundo del testing de software. Sin embargo, no basta con escribir casos de prueba al azar o con solo probar lo obvio. La clave está en aplicar técnicas formales y estructuradas que permitan garantizar la calidad del producto, minimizar riesgos y optimizar el esfuerzo de pruebas. En este post aprenderás cómo hacerlo de forma profesional, alineado con los estándares de la certificación ISTQB Foundation Level (CTFL).


📌 ¿Qué significa "derivar" casos de prueba?

“Derivar casos de prueba” consiste en tomar insumos como requisitos, modelos, reglas de negocio, o cualquier otra base de prueba, y transformarlos en scripts o escenarios concretos que se ejecutarán durante las pruebas. Este proceso es parte de la fase de diseño de pruebas dentro del ciclo de vida del testing.


🧠 Técnicas de diseño de pruebas según ISTQB

El ISTQB clasifica las técnicas de diseño de prueba en tres categorías principales:

  1. Técnicas basadas en especificación (caja negra)
  2. Técnicas basadas en la estructura (caja blanca)
  3. Técnicas basadas en experiencia

1. Basadas en especificación:

Estas técnicas se enfocan en verificar lo que el sistema debe hacer, sin importar cómo lo hace internamente. Ejemplos:

  • Partición de equivalencia (Equivalence Partitioning): Divide los datos de entrada en clases que deben ser tratadas igual.
  • Análisis de valores límite (Boundary Value Analysis): Verifica los extremos y bordes de las clases de equivalencia.
  • Tablas de decisión (Decision Tables): Útiles cuando existen reglas de negocio complejas.
  • Transición de estados (State Transition Testing): Ideal para sistemas con múltiples estados y transiciones.

2. Basadas en la estructura:

Estas técnicas examinan la lógica interna del código y los flujos de control:

  • Cobertura de sentencias y decisiones: Asegura que cada línea o decisión del código haya sido ejecutada.
  • Pruebas de condición múltiple: Verifica todas las combinaciones de condiciones lógicas.

3. Basadas en experiencia:

Aquí entra el conocimiento del tester, intuición y experiencia previa. Se aplican sobre todo cuando no hay documentación suficiente.

  • Pruebas exploratorias
  • Pruebas con listas de errores comunes
  • Ataques de prueba basados en riesgo

💡 Ejemplo práctico: Cajero automático

Supongamos que estás probando un cajero automático. El requerimiento indica:

"El cajero solo permitirá retirar montos entre 20 y 2000 en múltiplos de 10".

Aplicando técnicas:

  • Partición de Equivalencia:
    • Válido: 100, 500
    • Inválido: 5, 2500
  • Análisis de Valores Límite:
    • Límite inferior: 20, 10 (inválido)
    • Límite superior: 2000, 2010 (inválido)

Con esto ya tienes varios casos de prueba efectivos, diseñados con lógica, cobertura y valor para el negocio.


🔁 Buenas prácticas al derivar casos de prueba

  • Asegúrate de tener bases de prueba claras y entendidas.
  • Combina diferentes técnicas para mayor cobertura.
  • Prioriza los casos con base en riesgo.
  • Documenta no solo el caso, sino también el motivo de su creación.
  • Usa herramientas de diseño cuando sea posible (diagramas de flujo, tablas, etc.)

✅ Conclusión

Derivar casos de prueba efectivos no es cuestión de suerte, sino de aplicar técnicas formales, tener criterio analítico y comprender bien el producto. Dominar este tema es clave para cualquier persona que quiera avanzar en su carrera como tester profesional, especialmente si estás apuntando a certificarte con el ISTQB.