Skip to content

Follow-up de #164: iteración completa de posts con motor GWT (a11y + frontmatter + overflow) #168

Description

@Scot3004

Contexto

Relación con #164

Objetivo

  • Ejecutar validaciones E2E sobre todos los posts de blog (ES/EN), reutilizando el motor GWT existente, con posibilidad de subset configurable en PRs y corrida completa en nightly.

Alcance funcional

  • Iteración de todos los posts por locale para blog.
  • En cada post, validar en una sola visita:
    1. Auditoría a11y
    2. Render correcto de frontmatter crítico (título/metadatos esperados)
    3. Ausencia de scroll horizontal
  • Integración con el patrón Given/When/Then ya presente en tests/fixtures y journeys existentes.

Propuesta técnica

  • Crear tools/getAllPosts.ts (o equivalente en tests/e2e/helpers) que devuelva matriz tipada:
    • { slug, locale, title, route }[]
  • Respetar variable MAX_POSTS_PER_COLLECTION:
    • unset => full run
    • valor numérico => subset determinístico para PR
  • Añadir suite dedicada (nombre a definir):
    • opción A: tests/e2e/content.spec.ts
    • opción B: tests/e2e/a11y/blog.content.spec.ts
  • Mantener estilo GWT en los casos (Given/When/Then) y usar page/journey helpers para evitar duplicación.

Criterios de aceptación

  • Existe utilitario para descubrir posts y generar dataset por locale.
  • La suite recorre dataset y ejecuta (a11y + frontmatter + no overflow) por post.
  • La suite usa el motor GWT actual (fixtures + steps), sin romper convenciones existentes.
  • Se puede limitar el volumen con MAX_POSTS_PER_COLLECTION.
  • CI:
    • PR: ejecuta subset configurable.
    • Nightly: ejecuta full run.
  • En fallo se adjuntan artefactos mínimos para diagnóstico (test-results / trace / reporte de violaciones).

Checklist

  • Implementar descubrimiento de posts tipado.
  • Parametrizar por locale y ruta final.
  • Reusar/ajustar journey para auditoría a11y + assertions de render + overflow.
  • Añadir soporte MAX_POSTS_PER_COLLECTION.
  • Integrar job PR (subset) y nightly (full).
  • Documentar ejecución local en docs/TESTING_STRATEGY.md o README de tests.

Notas

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions