Lección 5 de 6 · 2 min
Verificar la app contra la base
Al terminar sabrás
10 min- Diseñar la verificación en base de datos de una acción hecha en la UI
- Usar subconsultas para preguntas que un solo SELECT no responde
- Detectar efectos colaterales que la pantalla no muestra
Construyes: El checklist de verificación en base para el flujo de una reserva de punta a punta.
El flujo del QA de datos
El patrón es simple y poderoso: haces la acción en la UI, y confirmas en la base que quedó bien. No confías en el "guardado con éxito" de la pantalla; verificas la fuente.
Para una reserva recién creada:
-- 1. Existe exactamente una fila nueva
SELECT COUNT(*) FROM reservas
WHERE cliente_email = 'juan@test.cl'
AND creada_en >= '2026-07-14'; -- debe devolver 1, no 0 ni 2
-- 2. Los datos son exactos
SELECT fecha, estado, total FROM reservas
WHERE cliente_email = 'juan@test.cl'
ORDER BY creada_en DESC LIMIT 1; -- ¿fecha, estado y total correctos?
Existencia (1 fila), exactitud (cada campo) e integridad (el cliente existe). Ese es el mínimo serio.
Subconsultas: preguntas que un SELECT no responde
A veces necesitas filtrar por el resultado de otra consulta. Eso es una subconsulta (un SELECT dentro de otro):
-- Reservas de clientes que están bloqueados (¡no deberían poder reservar!)
SELECT * FROM reservas
WHERE cliente_id IN (
SELECT id FROM clientes WHERE bloqueado = true
);
Si esa consulta devuelve filas, encontraste un bug de regla de negocio: clientes bloqueados que igual reservaron. La subconsulta responde "¿cuáles cumplen esta condición que vive en otra tabla?".
-- Clientes que nunca han reservado
SELECT * FROM clientes
WHERE id NOT IN (SELECT DISTINCT cliente_id FROM reservas);
Cuidado con los efectos colaterales
Por qué esto te hace valioso
Este flujo —acción en UI, verificación en base, cobertura de efectos colaterales— es exactamente lo que hace un QA de datos, uno de los perfiles mejor pagados. Y es la antesala del testing de ETL: validar que los datos que se mueven entre sistemas llegan completos, exactos e íntegros.
Comprueba lo aprendido en el quiz y verifica el flujo completo en el reto.
Compruébalo
0/3Responde sin mirar atrás. Verás la explicación al instante.
1. Creas una reserva en la UI. ¿Cuál es la verificación MÍNIMA sensata en la base?
2. ¿Qué es una subconsulta?
3. Tras cancelar una reserva en la UI, ¿qué efecto colateral verificarías en la base?
Reto: verifica una reserva de punta a punta
Escribe las consultas para verificar, tras crear una reserva en la UI: que existe exactamente 1 fila nueva del cliente, que el horario quedó marcado como ocupado, y que hay un pago asociado con el mismo total.