SprilurTests Auth

Rate limiting després de 5 intents fallits

/

Prompt

- goal: Exceeding 5 failed login attempts within a minute triggers Fortify rate limiting and shows the "Demasiados intentos de acceso" throttle error tier: flow entry: url: /login auth: guest data: email: admin@sprilur.test password: wrongpassword attempts: 6 steps: - { action: fill, target: "Correo electronico", selector: '#login-email', value: "admin@sprilur.test" } - { action: fill, target: "Contrasena", selector: '#login-password', value: "wrongpassword" } - { action: click, target: "Entrar", selector: 'form[action*="/login"] button[type="submit"]', note: "repeat fill+submit 6 times; the 6th submit exceeds the 5/min limiter" } accept: - expect_url: /login - expect_text: "Demasiados intentos de acceso" - expect_visible: '#login-email ~ p' notes: > Fortify limiter is Limit::perMinute(5)->by(email|ip) (FortifyServiceProvider). Attempts 1-5 show the credentials error; attempt 6 shows the throttle message "Demasiados intentos de acceso. Por favor, inténtalo de nuevo en :seconds segundos." (eu: "Saioa hasteko saiakera gehiegi..."). This test is inherently stateful/time-sensitive: run it against a fresh limiter window (a prior run in the same minute can pre-throttle). One flow, do not split.

Pla de Test 1 pag · 23 passos · 3 validacions

Pàgines a visitar

/login Login page with email/password form and rate limiting protection

Passos del test

Validacions

After the 5th failed attempt, the wrong-credentials error paragraph is visible (rate limit not yet active) #login-email + p
After the 6th failed attempt, the page heading shows the 429 status code h1
After the 6th failed attempt, the rate-limit message 'Too Many Requests' is displayed div[role="main"] div

Historial de validació 1 iteracions

#? FAIL

Detalls

Estat
active
Generació
none
Tipus
Playwright
Creat
03/06/2026 14:31

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
28.6%
1r intent OK
0%
Iteracions totals
12
Temps total
143s
→ Validació
143s
Cost total
$0.6604
Tokens totals
625,579
Crides API
13
→ Cost/pas
$0.00c

Cost IA

Total
$0.6604
Generació
$0.2758
Execucions
$0.49c
Tokens totals
625,579
Crides API
13

Últimes Execucions

Cap execució encara.