chen0427ok opened a new pull request, #59374: URL: https://github.com/apache/airflow/pull/59374
## Description Implements UI E2E test case **DAGS-001** to verify DAGs list displays correctly, as requested in issue #59307. ## Changes - **New test spec**: `dags-list.spec.ts` with 3 comprehensive test cases - **Extended DagsPage**: Added methods to verify DAG list display functionality - **Best practices**: Used `data-testid` selectors as recommended in the [E2E Testing README](https://github.com/apache/airflow/blob/main/airflow-core/src/airflow/ui/tests/e2e/README.md#contributing-new-tests) - **Improved stability**: Increased LoginPage timeouts for better reliability during test execution ## Test Cases 1. **Verify DAGs list displays after login** - Ensures the DAG list is visible and contains at least one DAG 2. **Verify DAG links are formatted correctly** - Validates all DAG links follow the expected pattern `/dags/{dag_id}` 3. **Verify specific test DAG exists in the list** - Confirms the test DAG (`example_bash_operator`) is present ## Test Results **Local Testing Results:** - **Chromium**: 3/3 tests passed - **WebKit**: 3/3 tests passed - **Firefox**: 0/3 tests failed ### Firefox Issue Details All Firefox tests fail with the same error: ``` TimeoutError: locator.waitFor: Test timeout of 120000ms exceeded. Call log: - waiting for locator('input[name="username"]') to be visible ``` **Root Cause**: Firefox browser receives a `404 Not Found` nginx error page when navigating to `/auth/login`, while Chromium and WebKit successfully load the login page. This appears to be an environment/configuration issue rather than a test code problem, as evidenced by: 1. Screenshot shows nginx 404 error page 2. Same test code works perfectly in Chromium and WebKit 3. Issue occurs consistently across all three Firefox test cases **Screenshots**: Test results and Firefox error screenshots are available in `test-results/` directory. ## Follows Contribution Guidelines - Uses Page Object Model (POM) pattern - Uses `data-testid` selectors where available - Test names start with "should" - Tests are independent and set up their own state - Includes meaningful assertions beyond navigation checks - Follows existing code style and conventions ## Related Issue Closes #59307 ## Checklist - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code where necessary - [x] I have made corresponding changes to the documentation (README.md already includes guidance) - [x] My changes generate no new warnings - [x] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [x] Any dependent changes have been merged and published in downstream modules -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
