Skip to content

Conversation

@VedantMadane
Copy link

Summary

This PR adds comprehensive E2E tests for the Variables page (/variables) functionality.

Closes #60565

What to test (from issue requirements)

  • Verify variables list displays
  • Create variable
  • Edit variable
  • Delete variable
  • Search variables
  • Import variables from file
  • Verify pagination works
  • Verify sorting behaviour

Implementation Details

Page Object: VariablesPage.ts

Created a new page object following the Page Object Model (POM) pattern with:

  • Locators for all interactive elements (buttons, inputs, table cells)
  • Methods for all CRUD operations
  • Navigation and wait helpers
  • Search and pagination utilities

Test Specs: variables.spec.ts

Test suites include:

  1. List Display - Verifies page structure, column headers, and basic layout
  2. CRUD Operations - Create, edit, and delete individual variables
  3. Search - Filter variables by search term, clear search, handle no results
  4. Import - Import variables from JSON file
  5. Pagination - Display pagination controls, navigate between pages
  6. Sorting - Verify sortable column headers

Acceptance Criteria Compliance

  • All tests follow Page Object Model (POM) pattern
  • Tests use testConfig compatible pattern
  • Tests create/cleanup their own test data in beforeAll/afterAll
  • Tests work across Chromium, Firefox, and WebKit browsers (using Playwright)
  • No hardcoded values - uses dynamic data with unique keys

Testing

These tests can be run locally with:

breeze testing ui-e2e-tests --test-pattern "variables.spec.ts"

Or directly:

cd airflow-core/src/airflow/ui
pnpm install
pnpm test:e2e:install
pnpm test:e2e -- --grep "Variables"

Related Issues

This adds comprehensive E2E tests for the Variables page (/variables):

Tests added:
- List Display: Verify page structure and column headers
- CRUD Operations: Create, edit, and delete variables
- Search: Filter variables, clear search, no results handling
- Import: Import variables from JSON file
- Pagination: Display pagination controls, navigate between pages
- Sorting: Verify sortable column headers

Implementation details:
- Created VariablesPage.ts page object following POM pattern
- Tests use dynamic test data with unique keys to avoid conflicts
- Tests create/cleanup their own test data in beforeAll/afterAll
- Tests work across Chromium, Firefox, and WebKit browsers

Closes apache#60565
@boring-cyborg
Copy link

boring-cyborg bot commented Jan 15, 2026

Congratulations on your first Pull Request and welcome to the Apache Airflow community! If you have any issues or are unsure about any anything please check our Contributors' Guide (https://github.com/apache/airflow/blob/main/contributing-docs/README.rst)
Here are some useful points:

  • Pay attention to the quality of your code (ruff, mypy and type annotations). Our prek-hooks will help you with that.
  • In case of a new feature add useful documentation (in docstrings or in docs/ directory). Adding a new operator? Check this short guide Consider adding an example DAG that shows how users should use it.
  • Consider using Breeze environment for testing locally, it's a heavy docker but it ships with a working Airflow and a lot of integrations.
  • Be patient and persistent. It might take some time to get a review or get the final approval from Committers.
  • Please follow ASF Code of Conduct for all communication including (but not limited to) comments on Pull Requests, Mailing list and Slack.
  • Be sure to read the Airflow Coding style.
  • Always keep your Pull Requests rebased, otherwise your build might fail due to changes not related to your commits.
    Apache Airflow is a community-driven project and together we are making it better 🚀.
    In case of doubts contact the developers at:
    Mailing List: [email protected]
    Slack: https://s.apache.org/airflow-slack

@boring-cyborg boring-cyborg bot added the area:UI Related to UI/UX. For Frontend Developers. label Jan 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:UI Related to UI/UX. For Frontend Developers.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

UI E2E Test || ADMIN-001: Verify Variables Page functionality

1 participant