UAT Execution and Sign-Off

UAT execution is the part of user acceptance testing in which the intended users work through the prepared UAT scenarios on a release candidate, while the team records each result and every issue the users raise. Sign-off is the recorded decision that follows: the business owner accepts the system, accepts it with conditions, or rejects it, based on the evidence the sessions produced.

Example: at a different company from the one in the lesson on planning UAT, ten employees, managers and finance staff spend three mornings submitting, approving and paying expense claims on a UAT environment. Of the nine issues they raise, two are defects. One is fixed and retested during UAT; for the other, which has a workaround, the finance director signs a conditional acceptance with a fix due within two weeks.

Why it matters

Well-planned scenarios still fail in badly run sessions: users follow the tester instead of doing their own work, issues get lost or mixed up with wishes, and the decision rests on impressions. The product then goes live with gaps the business never knowingly accepted.

A sign-off record protects everyone. It tells the business exactly what it accepted and which risks remain, gives the delivery team a clear end to UAT, and gives the tester a factual answer when someone later asks who decided the release was ready.

Running UAT sessions

A UAT session is a time-boxed block, often half a day, in which a group of users executes a planned set of scenarios. Before the first one, confirm the entry criteria from the UAT plan: system testing has met its exit criteria, and the environment, accounts and data are ready. An unstable build wastes the scarcest resource in UAT, the users’ time.

Every session follows the same rhythm. A short briefing covers the day’s scope, how to record results and raise issues, and who answers questions. The users then do the work themselves while the team observes and helps. A debrief confirms the results, reviews new issues and plans the next session. If a blocking defect or an environment failure stops most scenarios, suspend the session instead of letting users wait, and resume when the agreed resumption criteria are met, for example a fixed build that has passed a smoke test; the lesson on entry and exit criteria shows how to write both.

  • Business users: execute the scenarios and judge whether the result supports their work.
  • UAT coordinator, often the test lead: runs the schedule, the results log and the debrief.
  • Tester as facilitator: observes, helps users record what they saw and reproduces issues, without taking over the keyboard.
  • Product owner or business analyst, with a developer on call: answer questions on intended behaviour and fix environment problems quickly.

Logging and triaging what users find

Log every observation as an issue, in the user’s words, before deciding what it is. ISTQB calls a condition that deviates from expectation an anomaly, and the Foundation syllabus notes that a reported anomaly may turn out to be a real defect or something else, such as a change request. Record the scenario, the user, the build, what they did, expected and saw, the evidence (a screenshot or a record number) and the business impact in their words. The tester then turns each confirmed defect into a full bug report.

Triage new issues at least daily with the product owner and a business representative: in UAT, severity and priority depend on business impact, so the business must take part. Each issue gets one classification:

  • Defect: the system does not meet an agreed acceptance criterion or requirement; it enters the defect lifecycle.
  • Change request: the system works as agreed, but users now want something different; it goes to the backlog or change control, and the scenario is not marked failed because of it.
  • Training or documentation issue: the system is right, but users could not find or understand something; it goes to the user guide or training.
  • Environment or test data problem: the UAT set-up is wrong, not the product; fix it and rerun the scenario, which was blocked, not failed.
  • Duplicate or question: link it to the original or close it with the answer, so the user sees what happened to it.

The decision: accepted, conditionally accepted or rejected

UAT ends with a decision by the business owner named in the UAT plan, made against the exit criteria agreed there: for example, every planned scenario executed, no open Blocker or Critical defect, and every acceptance criterion met or covered by an agreed condition. The tester supplies the evidence and a recommendation; the decision belongs to the business.

Conditional acceptance means the business accepts now, but the acceptance depends on things that must still happen. It suits open defects with a workaround and limited impact. It usually does not suit a broken critical business rule, a legal requirement, data integrity or security: those normally mean rejection until fixed.

A release in UAT leaves it only by a recorded decision: accepted, conditionally accepted until every condition is verified, or rejected and brought back to UAT on a new build.
Transitions
#FromToEvent or decision
1In UATStartAcceptedEndPassDecision: every acceptance criterion met; remaining issues minor and recorded
2In UATStartConditionally acceptedCautionDecision: open defects have a workaround; each condition has an owner, a due date and a check
3In UATStartRejectedFailDecision: a critical criterion fails with no acceptable workaround
4RejectedFailIn UATStartNew build with the fixes: confirmation and regression testing, then the failed scenarios againalternative path
5Conditionally acceptedCautionAcceptedEndPassEvery condition verified and its closure recorded
6Conditionally acceptedCautionRejectedFailA condition is missed and the business owner, deciding again, withdraws acceptance instead of agreeing a new datealternative path
7In UATStartSuspendedA blocking defect or an environment failure stops most scenariosalternative path
8SuspendedIn UATStartResumption criteria met: a fixed build or a restored environmentalternative path

Every decision, a rejection included, is recorded with the build, the open issues and the decision maker’s name.

  • Accepted: every acceptance criterion is met; remaining issues are minor, recorded and planned.
  • Conditionally accepted: each condition names the issue, the workaround meanwhile, the owner, the due date or target release, and who verifies closure and how.
  • Rejected: the record states the criteria not met and what must happen before UAT resumes, usually a new build with the fixes, confirmation and regression testing, then the failed scenarios again.
  • A conditional acceptance never becomes full acceptance by default: record when every condition is verified, and if one is missed, the business owner decides again: agree a new date or withdraw the acceptance.

Sign-off evidence: what the record contains

The sign-off record, a document or an approval in a tool, keeps the decision and the facts behind it. It contains the main items the ISTQB Foundation syllabus lists for a test completion report (a summary, an evaluation against the exit criteria, deviations from the plan, unfixed defects and remaining risks) and adds the decision. Write it so that someone who was not there understands, months later, what was accepted and why.

  • Identification: system, release, the exact build accepted, the build each result came from, environment and dates.
  • Coverage: scenarios planned, executed, passed, failed and blocked, traced to the acceptance criteria, and anything not tested with the reason.
  • Participants: the names and roles of the users who executed the scenarios.
  • Issues: open defects with severity, priority and workaround, and where change requests and training items went.
  • Decision: the outcome, each condition in full, the decision maker’s name and role, the date and the approval itself.
  • Evidence: links to session logs, screenshots and the issue log, with personal data redacted before sharing.

Try it: Requirements → Test Cases Try it: Images to PDF Try it: Redact PDF

Worked example: signing off an expense-claims module

This example follows a different company and release from the plan in the lesson on planning UAT. Release 2.3 of its finance system adds expense claims, and its own UAT plan has six acceptance criteria, 18 scenarios and three morning sessions (S1 to S3) with five employees, two line managers, a finance manager and two finance clerks. Its finance director decides.

In S1, UAT-07 and UAT-08 are blocked: the managers’ UAT accounts lack approval rights (ISS-03, a test data problem). With the accounts fixed, both run in S2, where UAT-08 finds ISS-06, a Critical defect: claims over 5,000 SAR skip the finance manager’s approval. Build rc3 fixes it; in S3 the scenario passes confirmation testing, and the approval and payment scenarios, which the fix could affect, pass again as regression on rc3, the build that will go live.

Nine issues in total: two defects, one change request, two training items, one data problem, two duplicates and one answered question. ISS-07 stays open: receipt photos over 5 MB are rejected although AC-2 allows up to 10 MB. Users can compress the photo, so the QA lead recommends conditional acceptance. The record is turned into a PDF and the finance director signs it.

UAT sign-off record (excerpt): expense claims 2.3
Builds: S1-S2 on 2.3.0-rc2; S3 on 2.3.0-rc3 (retest and regression)
Build for go-live: 2.3.0-rc3, UAT environment
Participants: 5 employees, 2 line managers, 1 finance manager, 2 finance clerks
Scenarios: 18 planned, 18 executed, 17 passed, 1 failed, 0 blocked

AC    Scenarios       Result   Evidence
AC-1  UAT-01..UAT-03  Met      session log S1
AC-2  UAT-04..UAT-06  Not met  UAT-06 failed, ISS-07 (Major)
AC-3  UAT-07..UAT-10  Met      ISS-06 (Critical) fixed in rc3, retest S3
AC-4  UAT-11..UAT-13  Met      session log S2
AC-5  UAT-14..UAT-16  Met      bank file totals checked, S2; regression S3
AC-6  UAT-17..UAT-18  Met      report exports, S3

Open: ISS-07 (Major) receipt photos over 5 MB rejected; workaround: compress the photo
Other issues: 1 change request to the backlog, 2 training items in the quick guide
Decision: conditionally accepted on 2026-05-07, at the end of S3
Signed: Khalid Al-Harbi, finance director
Condition: ISS-07 fixed in 2.3.1 within 2 weeks of go-live (owner: dev lead);
           verified by a finance clerk rerunning UAT-06; closure confirmed by the
           finance director

Try it: Markdown to PDF Try it: Sign PDF

Common mistakes

  • Running a demonstration instead of UAT: the tester drives the scenarios while users watch, so the users’ own judgement is never tested.
  • Logging every user remark as a defect, or quietly dropping the ones that are not; change requests and training issues need their own path, and users need to see what happened to their issue.
  • Writing vague conditions such as "fix later": without an owner, a date and a verification step, a condition is never closed.
  • Signing off a build other than the one that goes live, or changing the build after sign-off without rerunning the affected scenarios.
  • Treating a casual "looks fine" email as sign-off, or letting the tester sign on the business’s behalf; the record must name the decision maker, the build, the scope and the open issues.

The QA perspective

During UAT the tester is a facilitator and the keeper of the record. Keep the results log and the issue log current in every session, note which build each result came from, write full bug reports from the users’ notes the same day, and bring every new issue to the daily triage with the product owner and the business. Protect the users’ time: check the environment and data before each session, and suspend early when something blocks them.

At the end, prepare the sign-off record and a recommendation based on facts: what was covered, what failed, what is still open and what that means for the business. Make sure the decision maker understands each remaining risk before signing, then track every condition to closure, verify it, and store the record with its evidence where an auditor or a new team member can find it.

Practice exercise

Triage a UAT issue log and recommend a decision

Your task

A clinic is accepting release 1.4 of its appointment-booking system; the clinic operations manager decides. Use the issue log below, written after the second UAT session, and assume that ISS-01 and ISS-05 are still open when UAT ends.

Material
Clinic booking 1.4, build 1.4.0-rc2, UAT issue log after session S2
AC-1 book, AC-2 cancel, AC-3 reschedule, AC-4 SMS reminder

ISS-01  UAT-03  receptionist: booking a returning patient creates a second record
ISS-02  UAT-05  doctor: wants the patient’s age next to the name in the day view
ISS-03  UAT-02  receptionist: could not find Cancel; it is under the More menu
ISS-04  UAT-07  receptionist: no SMS reminder; UAT patients have invalid numbers
ISS-05  UAT-06  receptionist: after a reschedule the old slot stays blocked
ISS-06  UAT-04  receptionist: a second record again, for another patient
Steps
  1. Classify each issue: defect, change request, training or documentation issue, environment or data problem, or duplicate.
  2. For each defect, propose a severity and name the acceptance criterion it affects.
  3. Recommend a decision for the end of UAT, with your reasons.
  4. Assume ISS-01 is then fixed and retested; write the conditions for accepting with ISS-05 still open.
Show the model answer
Model answer

ISS-01: defect, Critical, AC-1: a returning patient gets a second record, which splits the medical history, and there is no reliable workaround. ISS-06: duplicate of ISS-01; link it, because a second patient shows the defect is not tied to one record. ISS-05: defect, Major, AC-3: every reschedule loses a bookable slot, but reception can free it by hand.

ISS-02: change request (the day view was never required to show age), sent to the backlog. ISS-03: a training item for the quick guide, and a usability note for the product owner. ISS-04: test data problem; load test numbers the team controls and rerun UAT-07, which was blocked, not failed.

Decision: rejection while ISS-01 is open, because AC-1 fails on the integrity of patient records with no workaround. After the fix: confirmation testing of UAT-03 and UAT-04, regression of the booking scenarios and a rerun of UAT-07.

Conditions for ISS-05: the manual workaround is in the quick guide and reception staff are briefed before go-live; the development lead ships the fix in 1.4.1 by an agreed date; a receptionist reruns UAT-06 on 1.4.1; the operations manager confirms closure in the sign-off record.

Frequently asked questions

Who signs off UAT: the tester or the business?

The business owner named in the UAT plan or the contract. The tester or QA lead prepares the record and recommends a decision, and in some organisations also confirms that the record is complete, but never accepts the system on the business’s behalf.

Is conditional acceptance the same as accepting with known defects?

Not quite. A system can be fully accepted with known minor defects that are recorded and planned. Conditional acceptance means the acceptance itself depends on something that must still happen, such as a fix by a date, and each condition is tracked and verified before the acceptance is final.

Does sign-off need a handwritten signature?

No single format is required: a signed document, an approval in a test management or workflow tool, or a stored email approval can all work. What matters is that it identifies the decision maker, the decision, the build and the scope, and can be found later. Contracts and regulated environments may prescribe the form; follow them.

What if the build changes after sign-off?

The sign-off covers the build that was tested. For any later change, assess its impact, rerun the affected UAT scenarios and regression tests, and add the result and a confirmed decision to the record before that build goes live.

References

Practise with Mutqan tools

Convert a list of numbered requirements into traceable test cases with a requirement-to-test matrix.

Test Design

Combine photos, scans and screenshots of any format into one PDF, one image per page, entirely offline.

PDF Conversion

Permanently remove text and images from a PDF — draw black boxes and the redacted pages are re-rendered without the content underneath.

PDF Security & Privacy

Convert Markdown (.md) files to PDF in your browser: headings, lists, tables, code blocks, quotes, links and images typeset with embedded fonts.

PDF Conversion

Sign a PDF by drawing your signature, typing your name or uploading an image, then place and resize it on the page.

PDF Editing & Annotation

Go deeper

Your progress on this topic

Part of the QA Roadmap

Related topics in this module