Merge pull request 'Fix #61: Verbliebenen roten E2E-Test aus dem Typeahead-Umbau behoben' (#66) from fds2610-bot/Finanzmanager:main into main

Reviewed-on: https://codeberg.org/fds2610/Finanzmanager/pulls/66
This commit is contained in:
fds2610 2026-09-20 21:10:55 +02:00
commit 451a40a826
2 changed files with 20 additions and 3 deletions

View file

@ -1,5 +1,17 @@
# Änderungen # Änderungen
## Letzter roter E2E-Test aus dem Typeahead-Umbau behoben (04.09.2026)
Ein Test blieb nach der Anpassung an den Typeahead (siehe unten) noch rot:
„Bargeld-Tool › Eine vorgemerkte Kategorie wird beim Zuordnen geprüft“ – und zwar
zuverlässig, nicht nur gelegentlich. Ursache war kein Rest des Umbaus mehr, sondern ein zu
knapper Timeout: Die Schnellzuordnung im Kontoblatt prüft dabei gegen eine absichtlich
ungültige Adresse (`kasse.beispiel.invalid`), und bis der serverseitige Abruf daran
scheitert, vergehen durch `BargeldTool::ZEITGRENZE` (8 s Verbindungsaufbau) plus die
Namensauflösung der ungültigen Adresse über 15 Sekunden – mehr, als Playwrights
Standard-Timeout von 5 s für `toContainText()` hergibt. Die betroffenen Erwartungen tragen
jetzt einen eigenen Timeout von 25 s, der Test insgesamt 90 s statt 60 s.
## E2E-Datenbestand wird vor jedem Lauf aufgeräumt (04.09.2026) ## E2E-Datenbestand wird vor jedem Lauf aufgeräumt (04.09.2026)
Die Browser-Tests legten ihre Konten, Kategorien und Buchungen bei jedem Lauf neu an, Die Browser-Tests legten ihre Konten, Kategorien und Buchungen bei jedem Lauf neu an,

View file

@ -148,7 +148,7 @@ test.describe('Bargeld-Tool', () => {
test('Eine vorgemerkte Kategorie wird beim Zuordnen geprüft', async ({ page }) => { test('Eine vorgemerkte Kategorie wird beim Zuordnen geprüft', async ({ page }) => {
// Der Abruf läuft ins Leere; genau das soll das Ausrufezeichen zeigen – // Der Abruf läuft ins Leere; genau das soll das Ausrufezeichen zeigen –
// und die Zuordnung muss trotzdem stehen. // und die Zuordnung muss trotzdem stehen.
test.setTimeout(60_000) test.setTimeout(90_000)
const empfaenger = `Bargeldabhebung ${MARKE}` const empfaenger = `Bargeldabhebung ${MARKE}`
@ -172,8 +172,13 @@ test.describe('Bargeld-Tool', () => {
// Die Zuordnung steht, der gescheiterte Abruf hat sie nicht aufgehalten. // Die Zuordnung steht, der gescheiterte Abruf hat sie nicht aufgehalten.
// Über der Meldung steht noch die des Anlegens – gemeint ist die neue. // Über der Meldung steht noch die des Anlegens – gemeint ist die neue.
await expect(page.locator('.meldung-erfolg').last()).toContainText('Zuordnung gespeichert') // Der Abruf selbst braucht bis zu BargeldTool::ZEITGRENZE (8 s) für die
await expect(page.locator('.meldung-erfolg').last()).toContainText('fehlgeschlagen') // Verbindung – dazu kommt die Namensauflösung der ungültigen Adresse,
// zusammen bis über 15 s. Der Standard-Timeout von 5 s reicht dafür nicht.
await expect(page.locator('.meldung-erfolg').last())
.toContainText('Zuordnung gespeichert', { timeout: 25_000 })
await expect(page.locator('.meldung-erfolg').last())
.toContainText('fehlgeschlagen', { timeout: 25_000 })
const danach = page.locator('tr', { hasText: empfaenger }) const danach = page.locator('tr', { hasText: empfaenger })
await expect(danach).toContainText(KATEGORIE) await expect(danach).toContainText(KATEGORIE)