Regress

Regression testing
that runs itself

Automated regression testing for web apps. Regress crawls your app after every deploy, writes the tests, runs them and tells you exactly what broke.
Listening for triggers
Push to maina3f9c21
Deploy webhookPOST /deploy
Scheduleevery 6 hours

Every deploy

A deploy webhook, a GitHub push or a schedule starts a scan. There's no test code to write first.

Works with any stack that runs in a browser

Read the docs
ReactNext.jsVueNuxtSvelteAngularRemixAstroRailsDjangoLaravelPhoenix

Discovery

Find every flow without
writing a single test

Point Regress at a URL. It maps every page, form and button, fingerprints the structure of each one, and writes the journeys your users actually take.
/checkoutfp 9c1e·47b2

Form

6 fields

Navigation

12 links

Actions

4 buttons

Tables

1 table

Structural fingerprints

Every page becomes a fingerprint of its forms, tables, navigation and actions.

/checkoutHigh severity
−Email inputremoved
+Contact groupadded
~Submit labelPay → Continue

Ignored: timestamps, prices, copy changes

Smart diffing

21 deterministic rules decide what's a real regression and what's just a new timestamp.

Flow discovery

AI reads each changed page and writes the user journeys worth testing.

Signed-in pages

Record a login once. Every scan signs in before it starts.

Every deploy

Start scans from a deploy webhook, a GitHub push or a schedule.

No upkeep

When your UI changes, the tests change with it.

Testing

Know what broke,
and why

Every flow runs in a real browser against your live app. When one fails, you hear about it in Slack, email or your pull request, and the report shows the failing step, a screenshot and what changed on the page.

Checkout failed on acme-store.example

Step 4 of 5: the payment form never appeared.

Compared with the baseline: the email field was removed

Fixed in 5be0d12. All flows passing.

Alerts

Failures land in Slack, email and GitHub with a link to the full report.

Pass rate

97.9% over 30 days

a3f9c21 · Checkout failed
Oct 4Nov 3

History

Every run is kept, so you can see when a flow started failing and what changed.

Step screenshots

Every step is timed and screenshots are captured along the way, so failures come with proof.

Pull request checks

Results post to your pull request as a check run and a comment.

Why it failed

Each failure shows the step that broke and what changed on the page compared with its baseline.

For developers

Start a scan from
any pipeline

Explore docs

Deploy webhook

Send one signed request when a deploy finishes. Regress scans the new build and reports back to wherever your team already works.

GitHub push
Scans every push to your default branch
Status polling
Fail your pipeline on a regression
Schedules
Keep watching between deploys
Manual runs
One click from the dashboard
# after your deploy finishesSIGNATURE=$(printf '%s' '{}' \  | openssl dgst -sha256 -hmac "$REGRESS_WEBHOOK_SECRET" -hex \  | awk '{print $NF}')curl -X POST \  "https://api.regress.app/api/webhook/deploy/$REGRESS_PROJECT_ID" \  -H 'Content-Type: application/json' \  -H "x-regress-signature: sha256=$SIGNATURE" \  --data-raw '{}'# { "message": "Check triggered", "status": "running" }

Your users shouldn't be
your QA team

Free for 500 pages a month. No credit card, no test scripts.