How to Create a User Acceptance Test. A project will never attain the status of "successful" without the execution of a User Acceptance Test (UAT). The project may be considered complete and possibly within scope, time and budget, but it cannot truly be considered successful without the approval of the users who will be using the system. A well executed user acceptance test will ensure that each requirement was built and functions as expected.
Adopt a formal and universal template for all of your project's artifacts. Your readers and leaders will thank you for the ease of locating the pertinent information because it is consistently placed in the same area within each different document.
Create traceability boxes on your document. These at minimum should contain the test scenario identifier that will be executed with this user acceptance test group. It also must contain the specific business requirement identifier that will be tested; and preferably, you have a use case identifier to include as well.
Add descriptive text. Each test scenario should have a basic description, no more than a sentence that adequately explains what this scenario is attempting to accomplish. The brief title of the business requirement and use case description also needs to be included next to their respective identifier.
Add testing data and leave improvisational space. If specific variables and scenarios are to be tested, they must be listed here. If the testing is to be dynamic, unpredictable and self driven, a blank area must be available for the tester to write in the data that was used in the test.
Include check boxes that indicate whether or not the test case passed or failed.
Create sign-off boxes. You absolutely must have an area for the actors to sign indicating that they executed their duties in this acceptance test. These actors include the end user doing the actual testing, the business analyst administering the testing, the project manager and sponsor. This creates a chain of acceptance that the project deliverable has been successfully designed, coded and tested.
It is best to create specific test scenarios that test every single piece of functionality (business requirement), then create open and free form testing. This ensures that known functionality is tested and "new" functionality is caught that was not previously captured in the requirements elicitation phase. The user acceptance test group of end users should be large enough to put a significant load onto the system to test load, capacity and availability.