fix(e2e): networkidle → domcontentloaded fuer IACE E2E Tests
Root cause: Die Schwingarm-Rundtaktanlage Seite hat Background-Requests (vermutlich Polling oder SSE) die networkidle verhindern → 30s Timeout → alle Schwingarm-Tests schlagen fehl. Fix: waitUntil: 'domcontentloaded' + 3s Wartezeit fuer React-Hydration und API-Fetches. Verifiziert: Schwingarm-Seite laed korrekt mit domcontentloaded (h1: "Schwingarm-Rundtaktanlage"). iace-project-tabs: 10/10, iace-module: Schwingarm-Tests repariert. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -15,12 +15,12 @@ async function dismissBanner(page: import('@playwright/test').Page) {
|
||||
|
||||
test.describe('IACE Project — All Tabs', () => {
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}`, { waitUntil: 'domcontentloaded' })
|
||||
await dismissBanner(page)
|
||||
})
|
||||
|
||||
test('Overview page loads without error', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}`, { waitUntil: 'domcontentloaded' })
|
||||
await dismissBanner(page)
|
||||
await page.waitForTimeout(2000)
|
||||
const body = await page.textContent('body')
|
||||
@@ -30,55 +30,55 @@ test.describe('IACE Project — All Tabs', () => {
|
||||
})
|
||||
|
||||
test('Components tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/components`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/components`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Classification tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/classification`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/classification`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Hazards tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/hazards`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/hazards`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Mitigations tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/mitigations`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/mitigations`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Verification tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/verification`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/verification`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Evidence tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/evidence`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/evidence`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Tech-File tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/tech-file`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/tech-file`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Monitoring tab loads', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/monitoring`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/monitoring`, { waitUntil: 'domcontentloaded' })
|
||||
const body = await page.textContent('body')
|
||||
expect(body).not.toContain('Application error')
|
||||
})
|
||||
|
||||
test('Interview page loads — Grenzen & Verwendung form', async ({ page }) => {
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/interview`, { waitUntil: 'networkidle' })
|
||||
await page.goto(`${BASE}/sdk/iace/${PROJECT_ID}/interview`, { waitUntil: 'domcontentloaded' })
|
||||
await dismissBanner(page)
|
||||
await page.waitForTimeout(2000)
|
||||
const body = await page.textContent('body')
|
||||
|
||||
Reference in New Issue
Block a user