e2e: fix dropdown options timeout by using anyMatch instead of visibi…#4335
Open
limc5462 wants to merge 1 commit intoapache:devfrom
Open
e2e: fix dropdown options timeout by using anyMatch instead of visibi…#4335limc5462 wants to merge 1 commit intoapache:devfrom
limc5462 wants to merge 1 commit intoapache:devfrom
Conversation
…lityOfAllElements
|
Contributor
Author
Member
|
Thank you very much for your contribution. We look forward to more e2e fixes until the e2e CI failures are completely resolved. |
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.






What changes were proposed in this pull request
Currently, the E2E testing workflow is failing. The failure is caused by a "ghost node" interfering with the Selenium locator when it tries to interact with the dropdown options (such as the branch/refs selection) in ProjectsPage.
Since StreamPark's frontend uses the Ant Design Vue
Selectcomponent, its underlying engine (rc-virtual-list) renders a hidden dummy/measurement node in the DOM to calculate the dynamic height of options for virtual scrolling. This hidden node shares the exact same.ant-select-item-option-contentclass but inherently has empty text and remains invisible (isDisplayed=false).This PR fixes the workflow failure by introducing visibility filtering. By ignoring these hidden placeholder nodes generated by the frontend virtual scroll, the E2E script can accurately locate and interact with the target options.
Brief change log
Selectinteraction logic in the test cases.WebElement::isDisplayedfiltering when matching element collections such asselectRefs, safely bypassing the hidden measurement nodes generated by the frontend performance optimization.Verifying this change
[x] Re-run the StreamPark E2E tests via the GitHub Actions workflow or locally.
[x] Confirm that the previously failing ProjectsManagementTest— specifically the branch selection steps in Project creation — now passes stably. The fix has resolved the exceptions caused by invisible empty nodes.
Important Note: The E2E Workflow Will Still Fail
After merging this PR, the complete E2E test suite will still fail. This is expected, as other known issues remain. I will submit follow-up fixes immediately after this PR is merged to address these problems, until the entire workflow runs stably.
合并此PR后,E2E测试仍然会失败,但这是预期内的,因为还有其他已知问题存在,我已经找到了修复方法。我会在此PR合并后立即提交后续修复来解决这些问题,直到整个工作流能够成功运行。
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
Does this pull request potentially affect one of the following parts
no