refactor(e2e): consolidate auth and runtime test seams#5022
Open
schultzp2020 wants to merge 16 commits into
Open
refactor(e2e): consolidate auth and runtime test seams#5022schultzp2020 wants to merge 16 commits into
schultzp2020 wants to merge 16 commits into
Conversation
Close browser contexts in teardownBrowser, add teardown to auth-provider specs, wait for /healthcheck before smoke login and drop 10 retries, replace dispatchEvent clicks with native Playwright actions, and rename BackstageShowcase to RhdhInstance with dedicated table page object. Co-authored-by: Cursor <cursoragent@cursor.com>
Migrate all specs off direct UIhelper usage into page objects, add global RHDH health setup and managed browser sessions, replace waitForSelector, remove deprecated showcase selectors, rename catalog constants, enforce critical axe violations, add stability script, and native fetch in Keycloak. Co-authored-by: Cursor <cursoragent@cursor.com>
Centralize condition-based polling for K8s, log-follow, and login flows so tests fail fast instead of sleeping, and move per-spec timeouts into Playwright project config. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Add worker-scoped rhdhPage/rhdhContext fixtures in coverage/test.ts, AuthProviderHarness for auth-provider deployment setup, and migrate all serial specs off managed-browser. Push remaining spec locators into POMs, replace waitForTextDisappear with expect().toBeHidden(), and remove unused WaitStrategies. Co-authored-by: Cursor <cursoragent@cursor.com>
Move legacy selectors into support/selectors, replace CatalogUsersPO with CatalogUsersPage, and have high-traffic POMs call ui-helper modules directly. Co-authored-by: Cursor <cursoragent@cursor.com>
Absorb settings aria snapshots, build info card checks, sidebar menu assertions, and learning path link validation into SettingsPage and SidebarPage so specs no longer use raw page locators. Co-authored-by: Cursor <cursoragent@cursor.com>
Cover sleep, pollUntil, pollUntilStable, pollForValue, and waitForNextTotpWindow with fake timers, and wire yarn test:unit into CI. Co-authored-by: Cursor <cursoragent@cursor.com>
Scope Playwright to playwright/e2e, move Vitest tests to e2e-tests/unit, split Oxlint Playwright rules to *.spec.ts and Vitest plugin to *.test.ts. Co-authored-by: Cursor <cursoragent@cursor.com>
Load Playwright and Vitest only via file-pattern overrides instead of global plugins with cross-disable rules. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
parseLogFromJson was wrapping JSON.parse output in new Log(), which filled missing status and actor fields with constructor defaults and let validation pass when the backend omitted required fields. Compare the parsed object directly, matching pre-oxlint behavior. Co-authored-by: Cursor <cursoragent@cursor.com>
Reconcile PR3 folder layout with PR4 hardening changes: kube-client submodules, rhdh-deployment types/wait, coverage browser fixture, legacy ui-locators selectors, and semantic wait-strategies. Co-authored-by: Cursor <cursoragent@cursor.com>
OpenShift routes use self-signed certs; the API request context in globalSetup must match playwright.config.ts ignoreHTTPSErrors. Co-authored-by: Cursor <cursoragent@cursor.com>
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>
Unify login, shared browser lifecycle, and runtime cluster mutation behind fixtures and harnesses so specs stop duplicating fragile setup code and legacy helper layers. Co-authored-by: Cursor <cursoragent@cursor.com>
|
c8c12d6 to
ee20334
Compare
|
PR needs rebase. 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. |
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.



Summary
@support/coverage/testfixtures plus dedicatedsupport/auth/*modules so specs stop re-implementing browser/session setup.Architecture
Auth and session seams
Runtime mutation seams
Test plan
cd e2e-tests && yarn test:unitcd e2e-tests && yarn lintcd e2e-tests && yarn test:listMade with Cursor