Files
Portfolio/tests/browser/README.md

36 lines
1.2 KiB
Markdown

# Browser characterization tests
These Playwright tests lock the observable portfolio behavior at the browser
boundary. They exercise the built `dist/` output through the local preview
server rather than replacing Vue, Three.js, WebGL, or Web Audio with production
test hooks.
## Run
Build the preview artifacts, then run the whole browser suite:
```bash
npm run build:preview
npm run test:browser
```
Run only the Phase 2 journey gate:
```bash
npm run test:browser -- tests/browser/journey-integration.spec.ts tests/browser/reduced-motion.spec.ts tests/browser/static-fallback.spec.ts tests/browser/bfcache-lifecycle.spec.ts
```
## Add a case
1. Name the concrete regression the case catches.
2. Use literal inputs and expected browser-visible results.
3. Install `scene-instrumentation.ts` before navigation when resource counts or
platform calls are the observable boundary.
4. Keep failure injection in `page.addInitScript()` or Playwright routing; do
not add a test API to the application bundle.
5. Run the new case against both configured Chromium profiles, then run the
full suite.
Never copy credentials, private project identifiers, or private URLs into a
fixture. Use clearly fake values when a credential-shaped input is required.