Prompt
- goal: In the fichas buscador, the "Agentes implicados" and "Etapa" filters can each be toggled on and off (all options), once a guide type is selected tier: flow entry: url: /es/fichas/buscador auth: guest data: guide_type: "Urbanización" agents: ["Promotor", "Proyectista", "Constructor", "Dirección facultativa", "Administración pública", "Empresa de mantenimiento"] stages: ["Planeamiento", "Proyecto", "Ejecución", "Uso y mantenimiento", "Fin de vida"] steps: - { action: click, target: "Tipo de guía = Urbanización (radio, keyed by code)", selector: 'aside label:has-text("Urbanización")', note: "select guide type first; no results/filters are active until one is chosen (noFilters state)" } - { action: click, target: "each Agente / Etapa option label", selector: 'aside section:has(h3:has-text("Agentes implicados")) label, aside section:has(h3:has-text("Etapa")) label', note: "toggle each on then off; assert checked state changes" } accept: - expect_checkbox_toggles: 'aside section:has(h3:has-text("Etapa")) label' - expect_url_contains: /es/fichas/buscador notes: > DUPLICATE-DOM gotcha: every filter renders twice (mobile <details> + desktop <aside>) sharing the same wire:model — SCOPE all interactions to the visible desktop `aside` (lg) filter panel, else Playwright hits "two elements" (the old failure on "Promotor"). Inputs are sr-only: click the wrapping <label>, never the input, never force:true. Checkboxes are keyed by numeric id; the guide-type radio is keyed by code (urbanization/building). Livewire round-trips on each toggle (wire:model.live) — wait for it. Seeded agents: Promotor, Proyectista, Constructor, Dirección facultativa, Administración pública, Empresa de mantenimiento. Stages: Planeamiento, Proyecto, Ejecución, Uso y mantenimiento, Fin de vida.
Pla de Test 1 pag · 29 passos · 0 validacions
Pàgines a visitar
Passos del test
| # | Acció | Descripció | Selector | Valor | |
|---|---|---|---|---|---|
input[type="email"]
input[type="password"]
button[type="submit"]
label:has-text('Promotor')
label:has-text('Promotor')
label:has-text('Proyectista')
label:has-text('Proyectista')
label:has-text('Constructor')
label:has-text('Constructor')
label:has-text('Dirección facultativa')
label:has-text('Dirección facultativa')
label:has-text('Administración pública')
label:has-text('Administración pública')
label:has-text('Empresa de mantenimiento')
label:has-text('Empresa de mantenimiento')
label:has-text('Planeamiento')
label:has-text('Planeamiento')
label:has-text('Proyecto')
label:has-text('Proyecto')
label:has-text('Ejecución')
label:has-text('Ejecución')
label:has-text('Uso y mantenimiento')
label:has-text('Uso y mantenimiento')
label:has-text('Fin de vida')
label:has-text('Constructor')
Historial de validació 1 iteracions
Detalls
- Estat
- active
- Generació
- none
- Tipus
- Playwright
- Creat
- 11/06/2026 05:26
- Descripció
- Verificar funcionamiento de todos los filtros de Agente implicados y Etapa con todas las opciones disponibles en ambos idiomas
Tags
Tots els tags afegits
Cap tag assignat
Instruccions IA
Projecte
- **Locale coverage:** every public page and every key flow must be exercised in **both `/es` and `/eu`**; additionally verify the `/locale/{eu}` switch redirects back and persists in session. - **Default test account:** `admin@sprilur.test` / `password` (is_admin, verified, no 2FA) — use for `/admin` and authenticated frontend flows. For permission tests, use a **non-admin verified** user. - **Data conventions:** suffix any created test data (project `title`, document name, etc.) with a unique `uid` (timestamp/run id) to avoid collisions across runs. - **Mandatory assertions:** every form submission must assert the success outcome (redirect/toast) **and** the absence of validation errors; every navigation must assert the resulting **URL including its locale prefix**. - **Scope/priority:** auth + private project flows (login, create, evaluate, export) are **regression-critical** and get happy-path + key edge cases; public/buscador flows get happy path plus the "no guide type / no results / URL hydration" edges; backoffice gets representative CRUD smoke tests. - **Known seeded data to rely on:** - Guide types: **Urbanización** (`urbanization`), **Edificación** (`building`). - Typologies (urbanization): Residencial, Industrial, Terciario, Logístico, Equipamiento público, Mixto. (building): Edificio industrial, Edificio terciario. - Scopes (ámbito): **Proyecto**, **Obra**. - Chapters: GEN General, TRA Trabajos previos, PRE, VIA, AGU Agua, EST, ENE Energía, ZON, RES Residuos, EJE, MAN; (building) EDI Diseño del edificio, ENV. - Agents: Promotor, Proyectista, Constructor, Dirección facultativa, Administración pública, Empresa de mantenimiento. - Stages (Etapa): Planeamiento, Proyecto, Ejecución, Uso y mantenimiento, Fin de vida. - **Exports:** for PDF/CSV, assert the response/download headers (and CSV `;`/`,` formatting), not the binary contents.
Features Desat!
KPIs
- Taxa d'èxit
- 40%
- 1r intent OK
- 0%
- Iteracions totals
- 12
- Temps total
- 100s
- → Validació
- 100s
- Cost total
- $1.1501
- Tokens totals
- 175,870
- Crides API
- 13
- → Cost/pas
- $0.00c
Cost IA
- Total
- $1.1501
- Generació
- $1.1414
- Execucions
- $0.87c
- Tokens totals
- 175,870
- Crides API
- 13
Últimes Execucions
Cap execució encara.