You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ra...@apache.org on 2026/03/25 11:48:00 UTC
(airflow) 19/46: fix(ui/e2e): improve Playwright test patterns in task-logs.spec.ts (#63990)
This is an automated email from the ASF dual-hosted git repository.
rahulvats pushed a commit to branch py-client-sync
in repository https://gitbox.apache.org/repos/asf/airflow.git
commit 457eb19db39a1cf1c46268b3d4ddacc1773743f2
Author: Tyson Cung <45...@users.noreply.github.com>
AuthorDate: Tue Mar 24 16:57:47 2026 +0800
fix(ui/e2e): improve Playwright test patterns in task-logs.spec.ts (#63990)
* fix(ui/e2e): improve Playwright test patterns in task-logs.spec.ts (#63964)
Replace Playwright anti-patterns with best practices in task-logs spec.
Changes in task-logs.spec.ts:
- Replace locator('[data-testid="..."]') with getByTestId() (6 occurrences)
- Replace locator('[data-testid^="virtualized-item-"]') with
getByTestId(/^virtualized-item-/) regex pattern
Changes in playwright.config.ts:
- Remove task-logs.spec.ts from testIgnore list
closes #63964
* Update airflow-core/src/airflow/ui/playwright.config.ts
---------
Co-authored-by: Tyson Cung <ty...@example.com>
Co-authored-by: Yeonguk Choo <ch...@gmail.com>
---
.../src/airflow/ui/tests/e2e/specs/task-logs.spec.ts | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/airflow-core/src/airflow/ui/tests/e2e/specs/task-logs.spec.ts b/airflow-core/src/airflow/ui/tests/e2e/specs/task-logs.spec.ts
index f68881126e7..344244b11be 100644
--- a/airflow-core/src/airflow/ui/tests/e2e/specs/task-logs.spec.ts
+++ b/airflow-core/src/airflow/ui/tests/e2e/specs/task-logs.spec.ts
@@ -57,16 +57,16 @@ test.describe("Verify task logs display", () => {
});
test("Verify log content is displayed", async ({ page }) => {
- const virtualizedList = page.locator('[data-testid="virtualized-list"]');
+ const virtualizedList = page.getByTestId("virtualized-list");
await expect(virtualizedList).toBeVisible({ timeout: 30_000 });
- const logItems = page.locator('[data-testid^="virtualized-item-"]');
+ const logItems = page.getByTestId(/^virtualized-item-/);
await expect(logItems.first()).toBeVisible({ timeout: 10_000 });
});
test("Verify log levels are visible", async ({ page }) => {
- const virtualizedList = page.locator('[data-testid="virtualized-list"]');
+ const virtualizedList = page.getByTestId("virtualized-list");
await expect(virtualizedList).toBeVisible({ timeout: 30_000 });
@@ -74,7 +74,7 @@ test.describe("Verify task logs display", () => {
});
test("Verify log timestamp formatting", async ({ page }) => {
- const virtualizedList = page.locator('[data-testid="virtualized-list"]');
+ const virtualizedList = page.getByTestId("virtualized-list");
await expect(virtualizedList).toBeVisible({ timeout: 30_000 });
@@ -82,7 +82,7 @@ test.describe("Verify task logs display", () => {
});
test("Verify log settings", async ({ page }) => {
- const virtualizedList = page.locator('[data-testid="virtualized-list"]');
+ const virtualizedList = page.getByTestId("virtualized-list");
await expect(virtualizedList).toBeVisible({ timeout: 30_000 });
@@ -114,7 +114,7 @@ test.describe("Verify task logs display", () => {
});
test("Verify logs are getting downloaded fine", async ({ page }) => {
- const virtualizedList = page.locator('[data-testid="virtualized-list"]');
+ const virtualizedList = page.getByTestId("virtualized-list");
await expect(virtualizedList).toBeVisible({ timeout: 30_000 });