You are in the contributor/developer section. Looking to install or use the tool? Go to Home instead.

Test & Documentation Requirements — Text Size Adjuster

This document describes what must be validated and documented, and with what priority. See functional-requirements.md for the requirements being validated (referenced below as FR*) and implementation-plan.md for how the suite is built.

Priority statement

The hard requirement is Layer 1 below: the scaling engine must work correctly and perform well across varied, realistic page structures. Automated testing of the packaged browser extension end-to-end (Layer 2) is best-effort only, since Playwright has no official Firefox-extension-loading support. Firefox-for-Android cannot be automated at all (Layer 3) and is covered by a manual checklist instead.

TR1. Fixture sites

Served locally for Playwright. Each fixture isolates one real-world CSS technique and traces to functional requirements. The list, with what each fixture exercises and which FR it traces to, is fixtures/fixtures.json; the Layer 1 specs and the docs site both read it. Notes on two of them:

TR1a. Real-world site snapshots

In addition to the synthetic TR1 fixtures (which each isolate one technique), a second fixture set is built from actual popular websites, to catch real-world combinations the synthetic fixtures miss:

TR2. Layer 1 — automated engine validation (hard requirement)

TR3. Layer 2 — extension integration (best-effort, non-blocking)

TR4. Layer 3 — Firefox for Android (manual, not automated)

Own document: android-manual-qa-checklist.md. Step-by-step walkthrough (sideload the extension or install the userscript via a mobile userscript manager) against a representative fixture subset, with explicit pass/fail criteria, to be checked by hand per release.

TR5. Documentation site (end-user-facing only)

Acceptance: npm run build produces a browsable docs-site/dist/ with working internal links and all gallery images present in framed form; no manual copying or framing of screenshots. Live demo links (TR5.5) work when the site is served via npm run docs:serve.

TR6. Developer guide (separate from the docs site)

TR7. Publishing to GitHub Pages