Lección 2 de 7 · 2 min
Diseño de casos de prueba
Anatomía de un caso de prueba
Un caso de prueba profesional tiene exactamente lo necesario para que otra persona lo ejecute sin preguntarte nada:
| Campo | Ejemplo | |---|---| | ID | TC-RES-003 | | Título | Reserva rechazada cuando el horario ya está tomado | | Precondición | Existe una reserva a las 15:30 del 20-07 | | Pasos | 1. Abrir /reservas · 2. Elegir servicio "Corte" · 3. Elegir 20-07 15:30 · 4. Confirmar | | Resultado esperado | Mensaje "Horario no disponible" y la reserva NO se crea | | Prioridad | Alta (flujo de dinero) |
La trampa habitual: escribir el resultado esperado vago ("funciona correctamente"). Si dos personas pueden interpretar distinto si el caso pasó, el caso está mal escrito.
De historia de usuario a matriz de casos
Historia: "Como clienta, quiero reservar una hora online para no llamar por teléfono." Criterios de aceptación: horario disponible se reserva; horario tomado se rechaza; datos obligatorios: nombre y teléfono.
La matriz mínima que sale de ahí:
- Caso feliz: horario libre + datos válidos → reserva creada, confirmación visible.
- Caso negativo: horario tomado → rechazo claro, sin reserva fantasma.
- Validaciones: nombre vacío / teléfono vacío / teléfono con letras → error específico por campo.
- Bordes: reservar el último horario del día; dos personas confirmando el mismo horario a la vez.
- Flujo interrumpido: botón atrás a mitad de reserva; doble clic en confirmar.
Nota el patrón: 1 caso feliz, N casos de sabotaje. Los usuarios reales sabotean sin querer todos los días.
Positivos vs negativos: la proporción importa
Los equipos junior escriben 80% casos positivos. Los datos dicen lo contrario: la mayoría de los bugs de producción están en los caminos negativos y los bordes. Una buena matriz suele tener 1 positivo por cada 2–3 negativos/borde.
Ejercicio
Toma las 5 preguntas que escribiste en la lección anterior y convierte cada una en al menos un caso de prueba con la estructura de la tabla. Revisa: ¿tu resultado esperado es verificable sin ambigüedad?