chore: consolidate e2e Playwright tests, fix nav anchor issues, add guardrail suites (a11y/perf/visual), and docs #103
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
data-testidhooks to avoid brittle selectors.Production changes (no behavior changes intended)
components/nav-bar/desktop/nav-bar-desktop.tsxmin-w-fit flex items-center justify-startcomponents/faq/faq.tsxid="faq"from wrapper (keptdata-testid="faq-section").id="sponsors"→id="faq-contact".app/page.tsxabout-section(id="about"),faq-section(id="faq"),sponsors-section(id="sponsors"),team-section(id="team"), plushero-section.app/event/page.tsxdata-testid="event-location"for stable assertions.components/title-components/title-text.tsxdata-testid="event-date"for stable assertions.Note: These edits only add IDs/test-ids or revert a CSS experiment; no business logic or visual design changes were made.
Test suite changes
e2e/basic-smoke.spec.ts(green)e2e/critical/navigation.spec.ts(green across Chromium/Firefox/WebKit).first()to avoid rare strict-mode duplicatessafeGotoworkaround for WebKit’s interrupted navigatione2e/accessibility/wcag.spec.tse2e/performance/metrics.spec.tsfixmee2e/visual/components.spec.tsfixme(depends on events data)e2e/smoke.spec.ts, duplicated navigation files, generic forms/api specsConfig and scripts
playwright.config.ts: updated projects/reporters, retries, and sensible defaultspackage.json: scripts for targeted runs (critical, a11y, perf, visual)e2e/README.md: merged 2025 strategy and usage into a single source of truthWhy
Test plan
npx playwright test e2e/basic-smoke.spec.ts --project=critical-chromiumnpx playwright test e2e/critical/navigation.spec.ts --project=critical-chromiumnpm run test:e2e:a11ynpm run test:e2e:perfnpm run test:e2e:visualRisks and mitigations
Follow‑ups (optional)
Branch
chore/move-e2e-refactor-2025(published)