Skip to main content

What is PACE E2E?

PACE E2E is two things in one repository: a Playwright end-to-end test suite for the PACE application, and an AI-assisted framework that turns a plain-English description of a user flow (or a screen recording) into a reviewed, runnable test.

What problem does it solve?

Writing and maintaining end-to-end tests the traditional way requires knowing Playwright, TypeScript, and the internals of the application. That is a high bar for a QA tester whose focus is on the product, not the code.

PACE E2E lowers that bar. You describe what a user should be able to do — "create a new estimate and add three line items" — and the AI produces test code, checks it against the project's rulebook, and hands back a file ready to run. When requirements change, you update a short English description or a data file, not a wall of TypeScript.

The things that do change frequently — test data, field values, environment URLs — live in structured JSON files (tests/data/*.jsonc) that are easy to read and edit without touching any code.

A standalone repo — the application source is elsewhere

PACE E2E is a standalone repository. The PACE application's source code is not here. It lives in a separate checkout called pace-ui-application, which sits next to this repo on your machine. The environment variable PACE_APP_REPO tells the tooling where to find it; if that variable is not set, it defaults to ../pace-ui-application.

There is no src/ folder in this repo. If you need to look up a form field name, a button label, or a route, you search the sibling pace-ui-application checkout, not here.

What you work with day-to-day

FolderWhat it contains
tests/specs/English-language test specifications (.md files)
tests/e2e/Generated Playwright test files (.spec.ts)
tests/data/*.jsoncShared test data — project IDs, estimate names, credentials reference
tests/page-objects/Reusable page helpers used by the generated tests
tests/utils/Shared utilities and the data-resolver

You write or review the specs in tests/specs/. The AI takes care of tests/e2e/. Testers who want to change what data a test uses edit tests/data/*.jsonc.