test: lock journey lifecycle and static fallback
This commit is contained in:
35
tests/browser/README.md
Normal file
35
tests/browser/README.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user