Introducción al taller

Esta lección es un taller práctico. Aplicarás todo lo aprendido en el Módulo 3 para diseñar test suites para features realistas. Cada ejercicio simula un escenario real donde debes:

  1. Analizar los requisitos de la feature
  2. Seleccionar técnicas apropiadas
  3. Derivar test cases sistemáticamente
  4. Documentar tu justificación y cobertura

Ejercicio 1: Motor de precios de ride-sharing

Descripción:

Una app de ride-sharing calcula tarifas usando estas reglas:

Tarifa base: $2.50 Por milla: $1.75 (standard), $2.50 (premium), $3.25 (luxury) Por minuto: $0.35 (standard), $0.50 (premium), $0.65 (luxury) Tarifa mínima: $7.00 (standard), $12.00 (premium), $18.00 (luxury)

Surge pricing: Multiplicador de demanda 1.0x a 3.0x. No aplica a viajes programados 2+ horas de anticipación.

Descuentos: Primer viaje (50%, máx $10), código promo, descuento loyalty (10% con 50+ viajes). Solo uno aplica (el mayor valor gana).

Tasas: Airport $5, peajes al costo, booking fee $2 (exento para loyalty).

Restricciones: Tarifa mínima $0, máximo $500, cancelación $5 si conductor ya despachado.

Guía de solución

Selección de técnicas:

  • EP: Tipos de vehículo, tipos de descuento, niveles de surge
  • BVA: Boundaries de surge (1.0, 3.0), umbral loyalty (49/50 viajes), anticipación (1h59m/2h), tarifas mínimas, cap $500, cap descuento $10
  • Tablas de decisión: Prioridad de descuentos
  • Domain analysis: Distancia x tiempo x surge
  • State transitions: Ciclo de viaje

Tests clave:

#CategoríaTécnicaTest
1Cálculo baseEPStandard, 5 millas, 15 min → $16.50
2MínimoBVAViaje muy corto → al menos $7.00
3Boundary surgeBVA1.0x, 1.01x, 3.0x, 3.01x
4AnticipaciónBVA1h59m (surge aplica) vs. 2h00m (exento)
5Prioridad descuentoTabla de decisiónTres descuentos califican → mayor gana
6Cap primer viajeBVA50% de $25 = $12.50 → cap en $10
7Cap tarifaBVALuxury, larga distancia, max surge → $500
8Tarifa negativaBVAPromo grande en viaje barato → mínimo $0

Ejercicio 2: Sistema de citas médicas

Descripción:

Un portal de salud permite agendar citas:

  • Lunes-Viernes, 8:00-17:00, slots de 30 minutos
  • Citas del mismo día solo si se reservan antes de las 14:00
  • Máximo 3 meses de anticipación, máximo 2 citas activas
  • Follow-up: 7-90 días después de visita original
  • Paciente nuevo: slot de 60 minutos; recurrente: 30 min; urgente: usa slots de emergencia
  • Cancelación: 4+ horas antes de la cita
Guía de solución

Técnicas: State transitions para ciclo de cita, BVA para tiempos, EP para tipos de paciente, tablas de decisión para elegibilidad, combinatorio para combinaciones.

Tests de boundary clave:

  • Reservar a las 13:59 para mismo día vs. 14:00 (rechazado)
  • 3 meses exactos vs. 3 meses + 1 día
  • Follow-up día 6/7/90/91
  • Cancelar 3h59m antes vs. 4h00m

Ejercicio 3: Pipeline de moderación de contenido

Descripción:

Plataforma social con pipeline de moderación:

  • Tipos: texto, imágenes, videos, comentarios, bios
  • Checks: spam, profanidad, clasificación de imagen, PII, copyright
  • Reglas: confianza >=95% auto-rechazar, 70-94% review humano, <70% auto-aprobar
  • Profanidad severa: siempre rechazar
  • PII detectada: siempre review
  • Apelación: una vez por contenido rechazado
Guía de solución

Tabla de decisión core:

ConfianzaProfanidadPIIAcción
>= 95CualquieraCualquieraAuto-rechazar
70-94No severaNoReview humano
70-94SeveraCualquieraAuto-rechazar
< 70Ninguna/leveNoAuto-aprobar
< 70Ninguna/leveReview humano
< 70SeveraCualquieraAuto-rechazar

Tests de boundary:

  • Confianza 70 exacto: review (no aprobar)
  • Confianza 95 exacto: rechazar (no review)
  • Cuenta con 7 días exactos: prioridad media (no baja)
  • Segunda apelación: rechazada

Tests de state transition:

  • Contenido pasa los 5 checks → aprobado
  • Rechazado → apelado → revertido a aprobado
  • Rechazado → apelado → sostenido → sin más apelación

Produciendo un documento profesional de test design

Para cada ejercicio, tu documento debe incluir:

1. Análisis de la feature

  • Resumen de comportamientos clave
  • Ambigüedades o asunciones identificadas

2. Justificación de selección de técnicas

3. Tabla de test cases

IDTécnicaCategoríaInputResultado esperadoPrioridad
TC-001BVABoundary surgesurge=3.0xAplicado al máximoAlta

4. Análisis de cobertura

  • Requisitos cubiertos / totales
  • Brechas identificadas y riesgos

5. Riesgos y asunciones

Puntos clave

  • El test design del mundo real requiere combinar múltiples técnicas para una sola feature
  • Siempre empieza analizando la feature y seleccionando técnicas antes de escribir tests
  • Documenta la justificación de selección de técnicas
  • Los requisitos ambiguos son comunes — documenta asunciones y testea ambas interpretaciones
  • La práctica de taller es la forma más rápida de construir intuición de test design
  • Un documento profesional comunica no solo QUÉ testeaste sino POR QUÉ elegiste ese enfoque