feat(e2e): harden browser lifecycle, smoke gate, and RHDH naming#5004
feat(e2e): harden browser lifecycle, smoke gate, and RHDH naming#5004schultzp2020 wants to merge 27 commits into
Conversation
|
The container image build workflow finished with status: |
|
The container image build workflow finished with status: |
35a6696 to
b1245cb
Compare
|
The container image build workflow finished with status: |
b1245cb to
fe5a5fe
Compare
e403a5f to
002da5f
Compare
|
The container image build workflow finished with status: |
|
The container image build workflow finished with status: |
|
002da5f to
fa8b88e
Compare
fe5a5fe to
ca25f1e
Compare
|
The container image build workflow finished with status: |
ca25f1e to
edd12b0
Compare
fa8b88e to
c9f8ecd
Compare
|
The container image build workflow finished with status: |
c9f8ecd to
5a38cc9
Compare
edd12b0 to
086f57d
Compare
|
The container image build workflow finished with status: |
|
The container image build workflow finished with status: |
305108f to
d5a7950
Compare
Worker-scoped rhdhContext runs before testInfo.file is set; fall back to worker index for video output paths. Exclude documented RHDHPLAN-954 shell axe rules and wait for progress bars before scanning. Co-authored-by: Cursor <cursoragent@cursor.com>
Use --first-parent and match subject-line skip tags only so merged main chore commits and fix commit prose do not skip the PR image build. Co-authored-by: Cursor <cursoragent@cursor.com>
c8c12d6 to
ee20334
Compare
Reconcile e2e hardening with main's runtime/kube-client refactor and fix worker-scoped rhdhPage fixture crash when testInfo.titlePath is unset. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
|
The container image build workflow finished with status: |
Use toHaveCount(0) when waiting for template text to clear from self-service, and log in per-test via the page fixture instead of worker-scoped rhdhPage. Co-authored-by: Cursor <cursoragent@cursor.com>
|
The container image build workflow finished with status: |
The POM refactor exposed getSideBarMenuItem scoping to login-button, which never exists after guest login. Scope to nav sections instead and make openSidebarButton idempotent so verify-then-navigate flows work. Co-authored-by: Cursor <cursoragent@cursor.com>
Integrate main dependency patch (#4996) while keeping vitest from the e2e hardening branch so Prow can merge the PR ref cleanly. Co-authored-by: Cursor <cursoragent@cursor.com>
|
The container image build workflow finished with status: |
Scope sidebar navigation to nav and force-click nested links that sit under expandable section headers, which blocked Docs navigation in CI. Co-authored-by: Cursor <cursoragent@cursor.com>
page.locator('nav') matched duplicate Home links across nav roots and
force-clicks did not reliably route to Docs. Scope to the expandable
sidebar nav and use link href navigation when available.
Co-authored-by: Cursor <cursoragent@cursor.com>
Replace goto/force-click workarounds with role-scoped locators, visible-link resolution for duplicate DOM entries, aria-expanded section expand, and real link clicks. Add openSidebarLinkInSection for nested menu flows. Co-authored-by: Cursor <cursoragent@cursor.com>
|
The container image build workflow finished with status: |
Collapse competing expanded sections, scope links to their section group, and retry clicks with href fallback when MUI layout intercepts pointer events. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
|
The container image build workflow finished with status: |
Prow treats .github/ changes as image-relevant and waits 60 minutes for a commit-specific Quay tag. Revert these workflow/action updates so e2e-only PRs use the existing next image while the hermetic build was still running. Co-authored-by: Cursor <cursoragent@cursor.com>
|
The container image build workflow finished with status: |
|
|
@schultzp2020: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |



Summary
PR 4 in the E2E modernization stack (after #5002 OXC toolchain and #5003 pedantic).
Reliability and lifecycle
teardownBrowser()closes the Playwright context; auth-provider specs call it inafterAll/healthcheckviawaitForRhdhReady()before guest login; removed smoke-project 10 retries (root cause was starting before RHDH was ready)dispatchEvent("click")with native.click()/getByRole("link")pollUntilhelpers replace fixed sleeps; per-spec timeouts moved into Playwright project configArchitecture
rhdhPage/rhdhContextincoverage/test.ts;AuthProviderHarnessfor auth-provider deployment setup; serial specs migrated offmanaged-browser.tspage-objects/intosupport/selectors+ page modules; deepen core POMs (directui-helper/*imports); move residual spec locators into Settings/Sidebar/Home POMsBackstageShowcase→RhdhInstance,RHDH_INSTANCE_TABLEpage object; CI project IDs unchanged (showcase,showcase-rbac, etc.)Test separation
*.spec.tsunderplaywright/e2e/(PlaywrighttestDirnarrowed)*.test.tsundere2e-tests/unit/(Vitest); 15 tests forpoll-until.ts;yarn test:unitin CI**/*.spec.ts, Vitest plugin scoped to**/*.test.ts(no global cross-disable overrides)Merge order
feat/e2e-hardening)Test plan
cd e2e-tests && yarn lint— 0 errorscd e2e-tests && yarn fmt:check— cleancd e2e-tests && yarn test:list— 336 tests in 29 filescd e2e-tests && yarn test:unit— 15 passed