-
Notifications
You must be signed in to change notification settings - Fork 16.4k
Add E2E tests for backfill pause and stop controls #59738
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add E2E tests for backfill pause and stop controls #59738
Conversation
|
Thanks for PR :) |
|
Thanks for the review! I've updated the locators to scope them within the dialog context. I attempted to run the tests locally to verify the changes. The dialog scoping follows the same pattern used in DagsPage and ensures locators only match elements within the trigger dialog, preventing the strict mode violations. The key changes:
Let me know if you'd like me to make any additional changes! |
|
On my side, the tests seem to be failing. |
|
@KyeongJooni can we look at failure tests? |
|
@KyeongJooni you need a rebase |
b76840f to
84981dc
Compare
@vatsrahul1001 Rebased on latest main as requested. I've attempted to fix the test failures:
Could you please check if the tests pass now? Let me know if there are any remaining issues. |
7ee4110 to
ddf22b0
Compare
airflow-core/src/airflow/ui/tests/e2e/specs/backfill-controls.spec.ts
Outdated
Show resolved
Hide resolved
airflow-core/src/airflow/ui/tests/e2e/specs/backfill-controls.spec.ts
Outdated
Show resolved
Hide resolved
airflow-core/src/airflow/ui/tests/e2e/specs/backfill-controls.spec.ts
Outdated
Show resolved
Hide resolved
airflow-core/src/airflow/ui/tests/e2e/specs/backfill-controls.spec.ts
Outdated
Show resolved
Hide resolved
054eb92 to
ef55450
Compare
Rebased on upstream/main to resolve conflicts and fix test failures. - fix: use page.waitForLoadState() instead of waitForPageLoad() - feat: add status verification with getBackfillStatus() - refactor: update to new createBackfill(dagName, options) API - refactor: apply global auth pattern from PR apache#59692 - refactor: use dynamic dates instead of hardcoded values Closes apache#59594
Avoid waitForNoActiveBackfill() timeout by testing controls on actively running backfills instead of waiting for completion. Add AUTH_FILE import and align with backfill.spec.ts patterns.
- Use beforeEach/afterEach pattern with serial mode - Replace waitForTimeout with explicit state waits - Remove unused helper methods - Update test structure and naming conventions
Co-authored-by: Rahul Vats <43964496+vatsrahul1001@users.noreply.github.com>
Co-authored-by: Rahul Vats <43964496+vatsrahul1001@users.noreply.github.com>
2c55999 to
d9d2899
Compare
|
It looks like a test for "cancelled backfill cannot be resumed" might be missing. |
Co-authored-by: Yeonguk Choo <choo121600@gmail.com>
|
@KyeongJooni Thanks for the fixes. I see tests are passing now, they all have retries and are flaky. Could you investigate it |
Investigated and fixed in d02b5eb. The issue was .catch(() => undefined) on waitForResponse - when the response wasn't caught, the test proceeded without waiting for the API to complete. Removed the catch and increased timeout. Hopefully the tests will be stable now. |
|
@KyeongJooni it would be helpful if you could verify that all tests pass locally without flakiness, mark the resolved comments as resolved, and provide a brief summary of the changes. |
Summary of Changes
All resolved comments have been marked. I expect the tests to pass with these changes, but let me know if any issues remain. |
choo121600
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool, Looks good!
All tests are passing, and this part looks fine to me.
Thanks for the hard work 🙂
|
@KyeongJooni, Great work. One last thing, I see tests are passing, but on retry, can you check why there is flakiness? |
@vatsrahul1001 The flakiness in backfill tests has been resolved. The only flaky test in the latest CI run is xcoms.spec.ts, which is unrelated to this PR. All backfill tests pass without retry on all browsers (Chromium, Firefox, WebKit). |
|
Great work @KyeongJooni ! |
|
Awesome work, congrats on your first merged pull request! You are invited to check our Issue Tracker for additional contributions. |
|
Awesome, @KyeongJooni congrats on your first merge 🎉 |
Add E2E tests for backfill pause and stop controls Co-authored-by: Rahul Vats <43964496+vatsrahul1001@users.noreply.github.com> Co-authored-by: Yeonguk Choo <choo121600@gmail.com>
Add E2E tests for backfill pause and stop controls Co-authored-by: Rahul Vats <43964496+vatsrahul1001@users.noreply.github.com> Co-authored-by: Yeonguk Choo <choo121600@gmail.com>
Add UI E2E tests for backfill pause, resume, and cancel controls
This PR adds end-to-end tests to verify the backfill control functionality on the DAG detail page.
What this tests:
Implementation:
BackfillPagepage object following existing POM patternbackfill-controls.spec.tswith 3 test casesdags-list.spec.ts)closes: #59594
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rstor{issue_number}.significant.rst, in airflow-core/newsfragments.