12-testing.md
Testing · visión
GameVault no tiene GitHub Actions ni suite Karma. El contrato de prueba que sí existe es un smoke Playwright en scripts/browser-check.mjs: login real, recorre las rutas del vault y guarda PNG en .browser-check/.
| Capa | Runner | Qué cubre | Comando |
|---|---|---|---|
| Smoke / e2e | Playwright (Chromium) | Login, home, add, wishlist, historial, perfil, ficha, móvil | node scripts/browser-check.mjs |
| Unitario | — | No hay *.spec.ts en el repo | — |
| CI | — | No hay .github/workflows | — |
package.json declara playwright y ng test / ng lint, pero el catálogo de casos que se enseña aquí es el browser-check: es lo que produce las capturas del portfolio.
Siguientes documentos: unitarios · integración · e2e · CI.
13-testing-unit.md
Testing · unitarios
No hay specs Jasmine/Karma en el árbol actual (find … -name '*.spec.ts' vacío). npm test arrancaría el scaffold de Angular CLI si se añadieran.
Lo que sí está testeado en código son utilidades puras usadas por el form y el status (rating.utils, game-status.utils, genre.utils, release-countdown) — candidatas naturales a unitarios el día que se abra la suite.
Hasta entonces, el smoke Playwright cubre el camino feliz de la UI.
14-testing-integration.md
Testing · integración
No hay *.integration.spec.ts. La integración real se ejerce contra Neon Auth + Data API en local (npm start con .env) y en producción.
El browser-check hace de integración de rutas + guards: sin sesión redirige a /login; con sesión entra a /home, /add, /game/:id, etc.
Un test de integración futuro debería mockear DatabaseService y montar provideRouter con AuthGuard, igual que Presencia mockea Neon.
15-testing-e2e.md
Testing · e2e
Script: scripts/browser-check.mjs. Playwright Chromium, viewport 1280×800 (y un paso móvil).
npm start # :4200 con .env
node scripts/browser-check.mjs
Login con cuenta de desarrollo (EMAIL / PASSWORD en el script). Recorre:
| Paso | Ruta | Captura |
|---|---|---|
| login | /home tras sign-in | 01-home-after-login.png |
| add-game | /add | 02-add-game.png |
| wishlist | /wishlist/add | 02-wishlist-add.png |
| historial | /play-history | 02-play-history.png |
| perfil | /profile | 02-profile.png |
| ficha | /game/:id | 03-game-detail.png |
| edición | /edit/:id | 04-game-edit.png |
| móvil | /home | 05-home-mobile.png |
Salida: .browser-check/report.json (ok por paso + errores de consola). Las capturas de este portfolio (escritorio y móvil) salen de la app en Netlify con la misma cuenta, no de Imagine.
16-testing-ci.md
Testing · CI
No hay .github/workflows en videogames-library. El smoke se lanza a mano (o en local) con Playwright.
Qué haría un workflow futuro
npm cinpx playwright install --with-deps chromium- Arrancar
ng serve(o usarwebServeren unplaywright.config.ts) node scripts/browser-check.mjscon secretos de Neon en el entorno de CI
Hasta entonces, el criterio de “verde” es: login en videogames-library.netlify.app, biblioteca con covers, y el report.json del último browser-check sin pageErrors.