¿Qué Es Testing Basado en Checklists?

Testing basado en checklists usa listas de alto nivel de items a probar en vez de test cases detallados paso a paso. Cada item recuerda al tester qué verificar sin prescribir cómo verificarlo, dando flexibilidad a los testers experimentados mientras se asegura que nada importante se pierda.

Checklists vs. Test Cases Detallados

AspectoChecklistTest Case Detallado
FormatoPuntos brevesPaso a paso con resultados esperados
Tiempo de creaciónMinutosHoras
FlexibilidadAlta — tester decide cómo probarBaja — pasos exactos prescritos
ReproducibilidadMenor — depende del skill del testerMayor — cualquiera puede seguirlo
MantenimientoFácil de actualizarCostoso de mantener
Mejor paraTesters experimentados, features cambiantesFlujos críticos, compliance regulatorio

Cuándo Usar Checklists

Buena opción:

  • Smoke testing y sanity checks
  • Equipo experimentado con conocimiento del dominio
  • Features que cambian rápidamente
  • Guía de testing exploratorio
  • Testing de regresión del sprint

Mala opción:

  • Testing regulatorio o de compliance (necesita pasos documentados)
  • Testers novatos que necesitan guía detallada
  • Creación de tests automatizados (necesita pasos y datos exactos)

Anatomía de un Buen Checklist

Un item de checklist debe ser:

  • Conciso: Una línea, una verificación
  • Accionable: Claro qué verificar
  • Independiente: Cada item puede verificarse por separado
  • Priorizado: Items más críticos primero

Malo: “Probar el login” (muy vago) Bueno: “Login con credenciales válidas muestra dashboard” (claro, verificable)

Ejemplo: Checklist de Aplicación Web

## Login
- [ ] Credenciales válidas → dashboard mostrado
- [ ] Password inválido → mensaje de error, sin pista de lockout
- [ ] Username/password vacíos → error de validación
- [ ] SQL injection en campo username → sanitizado apropiadamente
- [ ] Cookie de sesión tiene flags Secure y HttpOnly
- [ ] "Recuérdame" persiste sesión por duración especificada

## Navegación
- [ ] Todos los links del menú llevan a páginas correctas
- [ ] Breadcrumbs muestran ruta correcta
- [ ] Botón atrás funciona como se espera
- [ ] Acceso por deep link funciona cuando está logueado
- [ ] Deep link redirige a login cuando no está autenticado

## Formularios
- [ ] Campos requeridos muestran validación al enviar vacío
- [ ] Límites de longitud de campos aplicados
- [ ] Caracteres especiales manejados (sin XSS)
- [ ] Formulario preserva datos en error de validación
- [ ] Botón enviar deshabilitado durante procesamiento

Construyendo un Checklist desde Cero

flowchart TD A[1. Identificar áreas de test] --> B[2. Listar verificaciones clave por área] B --> C[3. Agregar patrones de error comunes] C --> D[4. Priorizar items] D --> E[5. Revisar con el equipo] E --> F[6. Usar, refinar, repetir]

Estrategias Avanzadas de Checklists

Checklists Específicos por Dominio

Checklist E-Commerce (Items Clave):

  • Producto muestra precio correcto en todas las monedas
  • Total del carrito se actualiza al cambiar cantidad
  • Códigos de descuento se aplican y muestran correctamente
  • Procesamiento de pago maneja todos los métodos soportados
  • Email de confirmación se envía con detalles correctos
  • Inventario decrementa después de orden exitosa

Checklist de API:

  • Todos los endpoints retornan status codes correctos
  • Schema de response coincide con documentación
  • Autenticación requerida para endpoints protegidos
  • Rate limiting aplicado
  • Paginación funciona con edge cases (page 0, última + 1)
  • Responses de error incluyen mensajes significativos

Checklist de App Móvil:

  • App maneja cambios de orientación sin perder estado
  • Transiciones background/foreground preservan datos
  • Modo offline muestra mensajería apropiada
  • Push notifications llegan y navegan correctamente
  • App maneja denegación de permisos del OS

Checklists por Capas

Capa 1: Smoke (5 min) — App carga, login funciona, feature principal accesible Capa 2: Core (30 min) — Flujos de login completos, CRUD, workflows clave Capa 3: Completo (2+ horas) — Validaciones, cross-browser, accesibilidad, performance, seguridad

Evolucionando tus Checklists

AcciónCuándo
Agregar itemNuevo defecto que el checklist no cubrió
Eliminar itemFeature removido o item pasa consistentemente
Modificar itemRequerimiento cambió
ReordenarPrioridad cambió basado en riesgo

Ejercicio: Crea un Checklist de Testing

Escenario: Eres el único QA probando: Página de Configuración de Perfil con: editar nombre/email/bio, cargar avatar, cambiar password, 2FA, eliminar cuenta, preferencias de notificaciones.

Tarea: Crea un checklist con al menos 20 items, organizados por área funcional.

Pista

Organiza por feature: Edición de Perfil, Avatar, Password, 2FA, Eliminación de Cuenta, Notificaciones. No olvides: seguridad, accesibilidad, móvil, estados de error y diálogos de confirmación.

Solución
## Edición de Perfil (6 items)
- [ ] Actualizar nombre → guardado y mostrado
- [ ] Caracteres especiales en nombre → manejados
- [ ] Cambio de email requiere verificación
- [ ] Bio respeta límite de caracteres
- [ ] Campos requeridos vacíos → errores de validación
- [ ] XSS en bio sanitizado en display

## Avatar (5 items)
- [ ] Subir imagen válida → mostrada correctamente
- [ ] Imagen sobredimensionada → mensaje de error
- [ ] Archivo no-imagen → rechazado
- [ ] Eliminar avatar → avatar por defecto
- [ ] Avatar en todos los tamaños (header, perfil, comentarios)

## Password (4 items)
- [ ] Cambio con password actual correcto → éxito
- [ ] Cambio con password incorrecto → error
- [ ] Nuevo password cumple política
- [ ] Cambio dispara notificación email

## 2FA (4 items)
- [ ] Habilitar → QR code, setup completa
- [ ] Login requiere código 2FA
- [ ] Código inválido → rechazado
- [ ] Deshabilitar requiere confirmación de password

## Eliminación de Cuenta (4 items)
- [ ] Muestra diálogo de confirmación
- [ ] Requiere re-ingreso de password
- [ ] Eliminación es permanente
- [ ] Cancelación vuelve sin cambios

## Transversal (3+ items)
- [ ] Todo funciona en viewport móvil
- [ ] Navegación por teclado
- [ ] Advertencia de cambios sin guardar

Tips de Profesional

  • Empieza con historial de defectos. Los bugs pasados de tu equipo son la mejor fuente de items de checklist.
  • Mantén checklists bajo 50 items. Listas más largas causan fatiga y se saltan items.
  • Usa checklists como cobertura mínima, no máxima. Testers experimentados deben explorar más allá.
  • Versiona tus checklists. Almacénalos junto al código. Registra cuándo y por qué se agregaron items.
  • Combina checklists con testing basado en sesiones. Usa un checklist para guiar una sesión exploratoria con timeboxing.