3.7 KiB
3.7 KiB
ETAPA E2E — Tests Playwright: verificación deploy Sprint 5
Antes de tocar código, leé:
CLAUDE.mddocs/estado/ESTADO_PROYECTO_26JUN2026.md— estado general del proyecto
Confirmame el plan antes de implementar.
Credenciales de test (usuario dedicado — nunca las de Marcos)
- URL:
https://economia-cuidado.inqualityhq.com - Email:
test-e2e@inquality.com.py - Password:
TestE2E2026!#Cuidado - Rol:
platform_admin, org:InQuality
Estas credenciales van en .env.test en la raíz (agregar a .gitignore si no está).
Nunca hardcodeadas en los specs.
Verificar Playwright antes de instalar nada
npx playwright --version 2>/dev/null && echo "instalado" || echo "no instalado"
ls ~/.cache/ms-playwright 2>/dev/null && echo "browsers presentes" || echo "browsers ausentes"
Reportar resultado antes de continuar. Si ya está instalado con browsers, agregar solo
@playwright/test como devDependency sin correr npx playwright install.
Si no está: npx playwright install --with-deps chromium (solo Chromium).
Los 5 tests a implementar
Archivo: tests/e2e/sprint5-verificacion.spec.ts
Test 1 — Login y redirect
- Abrir
/admin/responsessin sesión - Verificar redirect a
/login - El DOM de
/logincontiene el campoemail, el campopassword, y el botón de toggle de contraseña (buscararia-labelque contenga "contraseña")
Test 2 — Login funcional
- Hacer login con las credenciales de test en
/login - Verificar redirect a
/admin/responses - El DOM contiene
<select>para filtro de survey (no links hardcodeados) - El DOM contiene al menos una fila de respuesta (hay 50 sembradas)
Test 3 — Vista detallada de respuesta
- Desde
/admin/responses, hacer click en el primer link "Ver" disponible - Verificar que la URL cambia a
/admin/responses/[uuid] - El DOM contiene al menos una sección (buscar texto que indique agrupación por sección)
- No hay error 404 ni texto "Respuesta no encontrada"
Test 4 — Dashboard con datos
- Navegar a
/dashboard(o la ruta del dashboard — verificar cuál es) - Verificar que al menos un widget muestra un porcentaje (buscar
%en el DOM) - No aparece "Datos insuficientes" en todos los widgets (puede aparecer en algunos segmentos con k<5, pero no en todos)
Test 5 — Formulario público accesible sin auth
- Navegar a
/o/encuesta(verificar ruta correcta del formulario) - Verificar que NO redirige a
/login(el formulario es público) - El DOM contiene el wizard o la pantalla de consentimiento
Decisiones ya tomadas
- Playwright en local apuntando a producción, no en CI (backlog)
playwright.config.tsen raíz,testDir: 'tests/e2e'.env.testpara credenciales, en.gitignore- Si un test falla, reportar el error exacto y consultarme — no intentar workarounds
Archivos autorizados
playwright.config.ts, tests/e2e/sprint5-verificacion.spec.ts, .env.test
(no se commitea), package.json (devDependency), package-lock.json.
Cualquier otro en git diff --name-only HEAD → revertir y reportar.
DoD antes de reportar
npx playwright test tests/e2e/sprint5-verificacion.spec.ts --reporter=list
git log --name-only -1
git diff --name-only HEAD # solo archivos autorizados, sin .env.test
grep -r "TestE2E2026" . # debe dar vacío — contraseña no commiteada
Qué reportar
- Resultado de checks de Playwright previos (versión, browsers)
- Resultado de cada test: pass/fail con mensaje exacto si falla
- Ruta real del dashboard y del formulario público (las que encontró en el código)
git log --name-only -1ygit diff --name-only HEAD- Hallazgos no esperados
No hacer deploy ni modificar nada en producción. No continuar sin mi OK si algo falla.