Skip to content

Conversation

@Jordan231111
Copy link

@Jordan231111 Jordan231111 commented Sep 8, 2025

Summary

  • Establishes a small, low‑maintenance E2E core (smoke + nav) and adds optional guardrail suites (a11y, perf, visual) tuned for this site.
  • Fixes navigation anchor reliability and duplicate IDs.
  • Adds stable data-testid hooks to avoid brittle selectors.
  • Consolidates E2E documentation and scripts.

Production changes (no behavior changes intended)

  • components/nav-bar/desktop/nav-bar-desktop.tsx
    • Reverted overflow experiment; container restored to: min-w-fit flex items-center justify-start
  • components/faq/faq.tsx
    • Removed duplicate/conflicting IDs:
      • Dropped id="faq" from wrapper (kept data-testid="faq-section").
      • Renamed FAQ contact heading from id="sponsors"id="faq-contact".
  • app/page.tsx
    • Added stable anchors and test-ids matching nav:
      • about-section (id="about"), faq-section (id="faq"), sponsors-section (id="sponsors"), team-section (id="team"), plus hero-section.
  • app/event/page.tsx
    • Added data-testid="event-location" for stable assertions.
  • components/title-components/title-text.tsx
    • Added data-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

  • Core “keep forever”
    • e2e/basic-smoke.spec.ts (green)
    • e2e/critical/navigation.spec.ts (green across Chromium/Firefox/WebKit)
      • Anchor parsing fix (trailing “/” sanitization)
      • .first() to avoid rare strict-mode duplicates
      • safeGoto workaround for WebKit’s interrupted navigation
  • Guardrails (optional, tuned for minimal churn)
    • e2e/accessibility/wcag.spec.ts
      • Runs automated checks; skips brand/structure‑sensitive rules only
    • e2e/performance/metrics.spec.ts
      • Keeps lightweight metrics; marks SW/CSS‑inlining/unavailable data as fixme
    • e2e/visual/components.spec.ts
      • Sponsors visual baseline included; schedule visual marked fixme (depends on events data)
  • Removed low‑value/duplicated specs:
    • Deleted old e2e/smoke.spec.ts, duplicated navigation files, generic forms/api specs

Config and scripts

  • playwright.config.ts: updated projects/reporters, retries, and sensible defaults
  • package.json: scripts for targeted runs (critical, a11y, perf, visual)
  • e2e/README.md: merged 2025 strategy and usage into a single source of truth

Why

  • Keep a very small set of stable, high‑signal checks for a site that changes yearly.
  • Avoid flake and maintenance drag by scoping or skipping non‑applicable checks.
  • Make it easy to run “just the important stuff” locally or in CI.

Test plan

  • Core
    • Run smoke: npx playwright test e2e/basic-smoke.spec.ts --project=critical-chromium
    • Run nav: npx playwright test e2e/critical/navigation.spec.ts --project=critical-chromium
  • Guardrails (optional)
    • A11y: npm run test:e2e:a11y
    • Perf: npm run test:e2e:perf
    • Visual: npm run test:e2e:visual

Risks and mitigations

  • Minimal risk to production: only added/renamed IDs and test-ids; reverted the nav overflow experiment.
  • Navigation anchor reliability improved by ensuring unique IDs on home sections.

Follow‑ups (optional)

  • If design approves, revisit brand contrast to re‑enable stricter a11y rules.

Branch

  • chore/move-e2e-refactor-2025 (published)

@Jordan231111 Jordan231111 changed the title Chore/move e2e refactor 2025 chore(e2e): consolidate Playwright tests, fix nav anchor issues, add guardrail suites (a11y/perf/visual), and docs Sep 8, 2025
@Jordan231111 Jordan231111 changed the title chore(e2e): consolidate Playwright tests, fix nav anchor issues, add guardrail suites (a11y/perf/visual), and docs chore: consolidate e2e Playwright tests, fix nav anchor issues, add guardrail suites (a11y/perf/visual), and docs Sep 8, 2025
@Jordan231111 Jordan231111 force-pushed the chore/move-e2e-refactor-2025 branch from a13631c to 1662fe2 Compare November 3, 2025 17:08
@Jordan231111 Jordan231111 marked this pull request as ready for review November 4, 2025 00:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant