What does UAT stand for?
UAT stands for User Acceptance Testing. It is the last major testing phase before a release, where the people who will actually use the software verify that it does what they need. You will also see it called end-user testing, acceptance testing, or (for external releases) beta testing.
The emphasis is on the first two words. Earlier phases are run by and for the engineering team; UAT is run by and for the user. The person coordinating it is often a dedicated UAT tester, working from acceptance criteria agreed up front.
What does UAT mean in practice?
In practice, UAT means putting the near-final product in front of representative users and asking a simple question: "Using real workflows and realistic data, does this do what the business needs?" The answer becomes the basis for a formal go/no-go decision, the UAT approval that clears a release for production.
UAT vs. other types of testing
UAT is one link in a chain. Each phase answers a different question:
| Phase | Question it answers | Usually run by |
|---|---|---|
| Unit testing | Does each function work in isolation? | Developers |
| Integration testing | Do components work together? | Developers / QA |
| System testing | Does the whole system meet the spec? | QA |
| User Acceptance Testing | Does it meet real business needs? | Business users / end users |
Types of UAT
"UAT" is an umbrella term. Common variants include:
- Alpha and beta testing: internal (alpha) then real external users (beta) exercise the product before general release.
- Business acceptance testing (BAT): validates the software delivers the intended business value.
- Contract acceptance testing: confirms the software meets contractually agreed criteria.
- Regulation / compliance acceptance testing: checks the software satisfies legal and regulatory rules.
- Operational acceptance testing (OAT): verifies operational readiness: backups, recovery, monitoring, and maintenance.
Why UAT matters
Software can pass every automated check and still be wrong: a form that validates perfectly but rejects a valid customer, a discount that applies in a way finance never intended. UAT is the gate that catches "built right, wrong thing" before customers do. Because it produces an auditable sign-off, it also gives the business a clear, documented release decision rather than a vague "looks fine to me."
Making UAT continuous
The catch with a single UAT phase at the end is timing: problems surface when they are most expensive to fix. Automating the repetitive acceptance checks changes that. DebuggAI generates and runs end-to-end tests of real user workflows on every pull request, so the "does it still work for users?" question is answered continuously, shrinking the manual UAT cycle and its end-of-project surprises.