Skip to main content

Feature: End-to-End Testing

Purpose

  • Feature name: End-to-end testing
  • Why this feature exists: Validate critical routes, evidence links, and metadata in a real browser.

Scope

In scope

  • route coverage across core pages
  • evidence link checks
  • metadata endpoints where applicable

Out of scope

  • unit test logic
  • performance budgets

Prereqs / Inputs

  • Playwright configured in the app
  • test base URL configured for CI

Procedure / Content

Feature summary

  • Feature name: End-to-end testing
  • Feature group: Testing and quality gates
  • Technical summary: Runs Playwright suites against core routes, evidence links, and key endpoints.
  • Low-tech summary: Browser-based tests confirm the site works like a user expects.

Feature in action

  • Where to see it working: pnpm test:e2e in the app repo.

Confirmation Process

Manual

  • Steps: Run pnpm test:e2e locally or against staging.
  • What to look for: All routes pass, evidence links resolve.
  • Artifacts or reports to inspect: Playwright HTML report on failures.

Tests

Potential behavior if broken or misconfigured

  • E2E tests skipped due to missing browsers or base URL.
  • Route failures due to bad slugs or links.

Long-term maintenance notes

  • Keep tests aligned with route additions.
  • Update Playwright config when environments change.

Dependencies, libraries, tools

  • Playwright
  • Node.js
  • pnpm

Source code references (GitHub URLs)

ADRs

  • None.

Runbooks

Additional internal references

Validation / Expected outcomes

  • E2E tests pass for core routes and evidence links.

Failure modes / Troubleshooting

  • Browser failures: reinstall Playwright browsers or use CI runners.

References

  • None.