Customers only trust you as long as your product works
One deploy accidentally removes the email field from checkout.
Who finds it: your customer
17:42
Deploy goes out. CI is green.
17:42
The checkout email field is gone. Nobody notices.
02:13
A customer can't check out. They try twice and leave.
08:30
Support ticket: “Your checkout is broken.”
11:05
Found, fixed and redeployed. Seventeen hours later.
Who finds it: Regress
17:42
Deploy goes out. Regress starts a scan.
17:45
R02 on /checkout: email field removed. Critical.
17:45
Slack alert with a link to the report.
17:58
Fixed and redeployed. The next scan is clean.
The rant (it's true though)
Unit tests verify your function returns 4 when you pass it 2 + 2. Congrats. Meanwhile a user clicks checkout and the whole thing explodes because an API changed its response format last Tuesday.
Integration tests are better, but you're mocking half the world. You're testing that your code talks to your other code. Not what the user actually sees.
E2E tests catch the real bugs. The ones where everything works in isolation but breaks when combined. The checkout that dies because someone renamed a CSS class. The stuff your customers find at 2am on a Sunday.
But you're not doing it. Features keep the lights on. E2E testing takes time you don't have. So you write a few Cypress tests for the happy path (you should probably use Playwright by now), run them in CI, call it a day.
The problems
Why nobody does E2E properly
Infrastructure
AI can't build it
Test environments, seed data that doesn't corrupt dev, spinning this up for every preview deployment. AI writes your tests now. It can't build the infra to run them.
CI time
10 minutes becomes 30
Your pipeline is already slow. Add E2E and it's painful. (Different problem. Check out Blacksmith. Not sponsored.)
Debugging
Good luck finding it
Something fails in GitHub Actions. You wait for the run to finish, download artifacts, or scroll through that log UI. You can't search. My Copilot agent times out.
Coverage
You test what you know
The production bugs are the ones you never thought to check. Like the submit button that stopped working because an overlay div got pointer-events: none removed.
The result
Teams give up. Write some smoke tests, pray, ship anyway.
So I built Regress. Because if nobody else is going to fix this, I will.
Contact
Want to chat about Regress, testing infrastructure, or just say hi?
dirk@stoffberg.devStop waiting for users to find the bugs
Free for 500 pages a month. No credit card, no test scripts.