Regression testing
Ship the change.
Keep everything else working.
Regression testing catches what your new code quietly broke. Bug0 runs it on every pull request, heals it when your UI moves, and a forward-deployed engineer checks every failure before it reaches you.
Built on Passmark, our open-source Playwright library for AI regression testing.
It worked last week
You merge a small fix on Friday. Monday, a customer emails: checkout is broken. The code you touched was nowhere near checkout.
That is a regression. A feature that worked before your change, and stopped working after it. Regressions are the tax you pay for shipping fast, and they get more expensive the faster you ship.

What is regression testing?
Definition
Regression testing is re-running tests after a code change to confirm that features which already worked still work. It does not check new behavior. It checks that old behavior did not break. Teams run it after every change, refactor, dependency bump, and release.
The name comes from the bug behavior: the software regressed to a broken state. Good regression coverage turns “I hope nothing broke” into a green check you can trust.
When you need it
Run regression tests any time the code or its dependencies move. In practice that means after every pull request, during refactors, when you upgrade a library or framework, and before each release. On an agile team shipping daily, regression is not an event. It is something that has to happen on every merge.
Regression vs functional, integration, and smoke testing
These terms overlap, which is why they get confused. The difference is timing, not technique.
Your functional and integration tests become your regression suite the moment you re-run them on every change. Regression is the job. The other tests are how you do it.
Why regression suites rot
Most teams do not lack regression tests. They lack a regression suite they trust. Three things break it over time:
- 01Brittle selectors. A test keyed to
.submit-btnbreaks the day a developer renames the class, even though the feature still works. - 02Maintenance debt. Teams spend roughly 40% of their QA time fixing tests instead of writing them. The suite becomes a second codebase nobody wants to own.
- 03Flakes that hide real bugs. Once a suite goes red for no reason often enough, the team stops reading the red. Then a genuine regression slips through behind the noise.
- 01Brittle selectors. A test keyed to
How Bug0 runs regression testing
Bug0 is Passmark as a service. Your forward-deployed engineer builds the suite on the engine, and the engine keeps it running while your app changes.
- Plain-English steps, real Playwright actions. Your engineer writes steps like “add the plan to the cart and check out.” Passmark resolves each one into a Playwright action at run time, so there are no hand-keyed selectors to break.
- Self-healing on UI change. When a cached step fails because the page moved, Passmark re-resolves it with fresh AI and caches the new path. A renamed button does not turn the suite red.
- Assertions checked by two models. Each assertion runs on Claude and Gemini in parallel, and a third model settles any disagreement. That consensus is what keeps false failures out of your pull requests.
- Verified by a human, gated in CI. The suite runs on every pull request. Your engineer reviews each failure, decides bug or flake, and files real bugs with video and repro before the change ships.
github.com/acme/app/pull/847Openfeat: new billing plans #847
jordan wants to merge 3 commits into main
All checks have passed3 successful checks- bug0 / critical-flows— 47 tests passed4m 12s
- bug0 / pr-smoke— 12 tests passed58s
- bug0 / regression-nightly— 214 tests passed11m 03s
Merge pull requestRelease gated by Bug0 · cleared to shipA service, not another tool
Most regression testing tools hand you a platform and leave the work with you: you still write the tests, chase the flakes, and own the maintenance. Bug0 is the opposite. You give us staging access. We build, run, heal, and verify the suite, and report results where your team already works.
The engine underneath, Passmark, is open source, so there is no lock-in. The outcome is a regression suite that stays green without taking a single engineering hour from your team.
“Bug0 is the AI QA platform behind Prospyr, the practice management software for aesthetics clinics. It tests our web app continuously and points us to exactly where the app broke when something fails. We catch issues early instead of in production, which keeps a HIPAA-compliant product stable.”
Greg KopyltsovCo-founder and CTO, Prospyr- 1-2 weeks
- 100% of critical flows covered
- 0%
- Flake rate, tests auto-heal
- $150K+
- Saved vs an in-house QA hire
Stop owning the regression suite.
Give Bug0 staging access. Your forward-deployed engineer builds the regression suite on Passmark, runs it on every pull request, and keeps it green as your UI changes. You ship. We catch what broke.
Managed AI QA with a forward-deployed engineer from $2,500/mo. Results in your first week.