Un escenario de prueba dice "el usuario no puede iniciar sesión con contraseña incorrecta". Un caso de prueba especifica el email exacto, la contraseña incorrecta a ingresar, cada paso de clic, el texto del mensaje de error esperado, y que el contador de intentos fallidos debería incrementarse en 1. Este artículo cubre cuándo es apropiado cada formato, cómo los equipos los usan juntos en flujos de trabajo de sprint, y por qué escribir escenarios antes que casos de prueba detecta más lagunas de cobertura.

La versión simple

Escenario de prueba: Una descripción de alto nivel de qué verificar. Una oración o declaración breve. Caso de prueba: Una especificación detallada de cómo verificarlo: pasos exactos, datos de prueba, resultados esperados.

El escenario de prueba es la pregunta. El caso de prueba es el procedimiento completo para responderla.

Escenarios de prueba

Un escenario de prueba describe un comportamiento de usuario o condición del sistema a probar, sin especificar los pasos exactos. Se escribe desde la perspectiva del usuario y se enfoca en el "qué", no en el "cómo".

Ejemplos para una funcionalidad de login:
  • El usuario puede iniciar sesión con credenciales válidas
  • El usuario no puede iniciar sesión con contraseña incorrecta
  • El usuario no puede iniciar sesión con un email no registrado
  • La cuenta se bloquea después de 5 intentos de login fallidos
  • El usuario puede iniciar sesión desde un navegador móvil
  • La sesión expira después de 30 minutos de inactividad
  • El usuario puede iniciar sesión con Google OAuth

Cada uno de estos es un escenario. Fíjate que no dicen:

  • Qué navegador usar
  • Qué email específico ingresar
  • Dónde exactamente hacer clic
  • Qué dice el mensaje de error esperado

Los escenarios son útiles para planificar cobertura: asegurarte de que no omitiste ningún flujo de usuario importante. Son rápidos de escribir y fáciles de revisar con stakeholders de negocio que no se preocupan por los detalles de implementación.

Casos de prueba

Un caso de prueba es una especificación completa y reproducible. Cualquier persona con el caso de prueba y acceso al sistema debería poder ejecutarlo exactamente y obtener el mismo resultado.

Ejemplo de caso de prueba para "El usuario no puede iniciar sesión con contraseña incorrecta":

| Campo | Contenido |

|-------|-----------|

| ID del caso | TC-LOGIN-003 |

| Título | El login falla con contraseña incorrecta |

| Precondiciones | La cuenta de usuario existe: qa_test@example.com (registrada, no bloqueada) |

| Datos de prueba | Email: qa_test@example.com / Contraseña: WrongPass123! |

| Pasos | 1. Ir a /login 2. Ingresar email qa_test@example.com 3. Ingresar contraseña WrongPass123! 4. Hacer clic en "Iniciar sesión" |

| Resultado esperado | El mensaje de error "Email o contraseña incorrectos" es visible. El usuario permanece en la página de login. |

| Postcondiciones | El contador de intentos de login fallidos aumenta en 1 |

Este nivel de detalle significa:

  • Un tester junior puede ejecutarlo sin adivinar
  • El test puede reproducirse exactamente si falla
  • Puedes comparar resultados a lo largo del tiempo (regresión)
  • Puede automatizarse sin ambigüedad

Por qué existen los dos

Escenarios sin casos de prueba = planificación de cobertura sin consistencia en la ejecución. Sabes qué probar pero la ejecución varía entre testers. Un tester usa un email válido para el test de "contraseña incorrecta", otro usa un email inexistente: resultados diferentes, bugs diferentes encontrados. Casos de prueba sin escenarios = puedes perderte en los pasos y perder de vista la cobertura. Podrías tener 50 casos de prueba detallados y aun así omitir flujos de usuario completos.

En la práctica, la mayoría de los equipos los usa en secuencia:

1. Escribir escenarios primero → revisar con PMs/devs → confirmar cobertura

2. Expandir los escenarios prioritarios en casos de prueba completos → ejecutar sistemáticamente

Cuándo usar cada uno

Usá escenarios de prueba cuando

#### Temprano en la planificación

Antes de que se construya la funcionalidad, puedes redactar escenarios para alinear al equipo sobre qué debería probarse. No es necesario conocer las URLs exactas ni las etiquetas de los botones todavía.

#### Para testing exploratorio

Los escenarios funcionan como charters livianos para sesiones exploratorias. "Explorar el login con varias entradas inválidas" es suficiente dirección.

#### Para revisiones con stakeholders

Los stakeholders de negocio y los product managers pueden revisar una lista de escenarios y decir "sí, también necesitamos probar X" sin perderse en los detalles paso a paso.

#### Para mapear cobertura

Una lista de escenarios te da una vista rápida de qué está cubierto y qué falta.

Usá casos de prueba cuando

#### Para testing de regresión

Los tests que ejecutas repetidamente en cada release necesitan ser consistentes. Los casos de prueba garantizan que se prueba lo mismo de la misma manera cada vez.

#### Para incorporar nuevos testers

Un miembro nuevo del equipo puede tomar un caso de prueba y ejecutarlo correctamente desde el primer día.

#### Para compliance y auditoría

Las industrias reguladas (banca, salud, aeroespacial) frecuentemente requieren evidencia de exactamente qué se probó y qué pasó. Los escenarios solos no son suficientes.

#### Al automatizar

La automatización convierte casos de prueba en código. Si tu caso de prueba es vago, tu automatización también lo será.

Distintos equipos, distintas palabras

La terminología varía entre equipos:

  • Algunos llaman a lo que llamamos "escenarios" → ideas de prueba o charters de prueba
  • Algunos usan "caso de prueba" para referirse a cualquier test, sea detallado o no
  • Algunos equipos ágiles escriben criterios de aceptación (en historias de usuario) que cumplen el mismo propósito que los escenarios
  • El formato BDD/Gherkin (Given/When/Then) sirve de puente: está estructurado como un caso de prueba pero es legible como un escenario

Lo que importa más que la etiqueta es el propósito. Si estás planificando cobertura, usa el formato más liviano (escenario o idea). Si estás ejecutando de manera consistente, usa el formato detallado (caso de prueba o especificación).

Un ejemplo práctico: funcionalidad de checkout

Paso 1: Escribir escenarios

  • El usuario puede completar el checkout con una tarjeta de crédito válida
  • El usuario no puede hacer checkout con una tarjeta vencida
  • El usuario no puede hacer checkout con un CVV inválido
  • El total del pedido incluye el impuesto correcto para la región del usuario
  • El usuario recibe confirmación por email después de un checkout exitoso
  • Los artículos sin stock no pueden ser comprados
  • El formulario de checkout valida los campos obligatorios

Paso 2: Priorizar

Marca los escenarios de mayor riesgo (procesamiento de pagos, validación de inventario) como "escribir casos de prueba detallados". Marca los de menor riesgo como "exploratorio: probar cuando haya tiempo".

Paso 3: Escribir casos de prueba para los escenarios prioritarios

Para "El usuario no puede hacer checkout con una tarjeta vencida", escribe:

  • Precondiciones (usuario con sesión activa, artículos en el carrito, números de tarjeta de prueba disponibles)
  • Datos exactos (número de tarjeta, mes/año de vencimiento, CVV)
  • Paso a paso (navegar al checkout → completar envío → completar campos de tarjeta → enviar)
  • Resultado esperado (texto del mensaje de error, pago no realizado, carrito preservado)

Resumen

| | Escenario de prueba | Caso de prueba |

|-|---------------------|----------------|

| Nivel de detalle | Alto nivel | Paso a paso |

| Se enfoca en | Qué probar | Cómo probarlo |

| Lo escribe | QA, PM, equipo | QA engineer |

| Se usa para | Planificación, cobertura | Ejecución, regresión |

| Velocidad de escritura | Rápido (minutos) | Más lento (detallado) |

| Audiencia | Todo el equipo | Testers, automatización |

Empieza con escenarios para asegurarte de tener la cobertura correcta. Escribe casos de prueba para lo que vas a probar repetidamente, automatizar o necesitas demostrar que funcionó. Omite los casos de prueba en áreas donde el testing exploratorio es suficiente.

→ See also: Cómo Escribir un Caso de Prueba: Formato, Ejemplos y Errores Comunes | Pruebas Exploratorias: La Habilidad que la IA No Puede Reemplazar | Testing Basado en Riesgos: Priorizar Qué Testear Cuando No Puedes Testar Todo