From 1b64c5318d99a91b0ae99eadd2b0ad0ae868f7d2 Mon Sep 17 00:00:00 2001 From: Merlin Pannewitz Date: Thu, 23 Jan 2025 10:31:05 +0100 Subject: [PATCH] Refactor test for footer links To address flaky tests --- packages/dito/tests/e2e/general.spec.ts | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/dito/tests/e2e/general.spec.ts b/packages/dito/tests/e2e/general.spec.ts index 3528bd34..d2d048b6 100644 --- a/packages/dito/tests/e2e/general.spec.ts +++ b/packages/dito/tests/e2e/general.spec.ts @@ -56,16 +56,16 @@ test.describe("test landing page", () => { }); test.describe("test links", () => { - test("links in footer work", async ({ page }) => { - await page.goto(staticRoutes.ROUTE_LANDING.url); - await page.getByRole("link", { name: "Datenschutzerklärung" }).click(); - await expect(page).toHaveURL(staticRoutes.ROUTE_PRIVACY.url); - await page.goto(staticRoutes.ROUTE_LANDING.url); - await page.getByRole("link", { name: "Barrierefreiheit" }).click(); - await expect(page).toHaveURL(staticRoutes.ROUTE_A11Y.url); - await page.goto(staticRoutes.ROUTE_LANDING.url); - await page.getByRole("link", { name: "Impressum" }).click(); - await expect(page).toHaveURL(staticRoutes.ROUTE_IMPRINT.url); + [ + { name: "Datenschutzerklärung", url: staticRoutes.ROUTE_PRIVACY.url }, + { name: "Barrierefreiheit", url: staticRoutes.ROUTE_A11Y.url }, + { name: "Impressum", url: staticRoutes.ROUTE_IMPRINT.url }, + ].forEach(({ name, url }) => { + test(`link ${url} in footer works`, async ({ page }) => { + await page.goto(staticRoutes.ROUTE_LANDING.url); + await page.getByRole("link", { name: name }).click(); + await expect(page).toHaveURL(url); + }); }); test("breadcrumb landing link works", async ({ page }) => {