2121-05-08

Let’s UAT: A practical test case illustrated on the example of Trello

User acceptance testing examples

User Acceptance testing is an important – yet often overlooked – step in every software development project. The principle of UAT is simple: It allows you to verify if a solution/software/application works for the user. Yet its implementation in real life software development teams and processes is something a lot of companies struggle with. In this article, we guide you through a practical user acceptance testing example, illustrated by testing a Trello feature.

When and how to start with User Acceptance Testing?

UAT tests usually have the goal to check if the client needs are met with the developed solution. Usually, this is done by checking the contract between the customer and the supplier.

Therefore, User Acceptance Tests are necessarily undertaken at the end of the software development cycle. This means that the developed software (e.g. web app or mobile app) must be largely feature-complete.

While the project team defines a UAT plan right at the beginning of a project (usually during the requirement definition), it executes the UAT test cases after development.

PLM workflow with UAT testing

(source: sfsu.edu)

UAT Scenarios – User Acceptance Testing Example

Depending on what you are evaluating, there can be different UAT test scripts that may require a variety of UAT templates. UAT scenarios template is a data and information collection tool that allows testers to accumulate feedback so they can improve their end product. Some of the UAT tool plan examples are given below.

Single-Purpose UAT Scenario Template

When a developer wants to test a particular aspect of their product or software, single-purpose UAT template is the best option. It outlines the test and its description along with the criteria and different parameters.

single-purpose user acceptance testing example template

Priority-Based UAT Scenario Template

When there are a multitude of aspects to evaluate and assess, it is a much better idea to rely on a template that provides the option to prioritize different testing criteria. This allows developers to address critical issues first and then focus on trivial bugs and fixes.

priority-based user acceptance testing example template

Customer-Focused UAT Scenario Template

As the name suggests, developers use this UAT template when they want to involve users or customers in the testing process. This enables them to engage the target audience and collect relevant data when it comes to addressing customer-oriented issues.

Customer-focused user acceptance testing example template

Multi-Purpose UAT Scenario Template

When a tester or developer is looking to evaluate a wide range of applications, it is a good idea to rely on a user acceptance testing template that’s Excel based. This provides them with flexibility and enables them to accumulate data regarding their product.

Detailed UAT Scenario Template

While the name is self-explanatory, a detailed UAT scenario template allows developers to include all types of information including test description, expected results, specs, and any relevant attachments. Testers use these templates to collect feedback for different systems such as desktop and mobile.

User acceptance testing example template

How to Write UAT Test Cases

Creating effective test scripts is essential for successful user acceptance testing (UAT). Prior to writing UAT scripts, it is important to develop detailed user stories along with acceptance criteria. These will provide the basic information you need to write effective scripts.

Create User Stories that Relate to Business Requirements

If you want UAT scripts to be user-oriented, it is important to make them the central part of the conversation. Define real-world use cases (stories) across different user roles during the development process. In Agile software development, user stories are simplified versions of the objectives that highlight how a particular feature is valuable to the user.

Come Up with Acceptance Criteria

Since user stories only form a part of the entire puzzle, you will also need to develop acceptance criteria to write effective UAT scripts. There should be a set of brief acceptance criteria for each story. On one hand, stories highlight the requirements of a feature while on the other, acceptance criteria outline the conditions that need to be met for that feature to be classified as satisfactory.

In Agile development framework, developers often use scenario-oriented approach to create acceptance criteria which uses GIVEN > WHEN > THEN format.

Write UAT Scripts

Once you have developed user stories and corresponding acceptance criteria, you are in a position to write effective UAT scripts. The scripts should be written by involving the users who ensure that each script covers all the necessary requirements. This also means that the required steps are also followed to test every condition. It is highly recommended that UAT scripts are reviewed by business users to avoid any bugs and errors.

The next big thing is the one that makes the last big thing usable.

Blake Ross – Co-Founder, Mozilla Firefox

If we want users to like our software, we should design it to behave like a likeable person: respectful, generous and helpful.

Alan Cooper – Software Designer

An user acceptance testing example with Trello

Let’s assume we got hired by Atlassian to do a UAT test in Trello (yay!). Their development team approached us to check if the developed archiving feature for Trello cards actually works for the user.

Conducting a UAT test on the example of Trello

Testing the functionality of such a simple feature sounds easy, right? However, we want to follow a proper UAT test setup here.

So how do we do that?

UAT Test case template

For our purpose of testing one particular feature of Trello, we make use of the available UAT test case template by the San Francisco State University.

The SFSU template helps testers to identify, define, and execute UAT test cases based on defined requirements. The template ensures that all relevant information is available for the person conducting the UAT test cases.

Let’s start by filling this template for our particular test case.

1. UAT Scope

First of all, we need to define the UAT scope of our particular test case. As we are in charge to test the newly developed Archive feature of Trello cards, we define the list of features that we want to test, and the ones that are not being tested.

As seen below, this test case example focuses on Desktop tests only, while mobile tests are not included in this UAT test case.

UAT test case example: defining the UAT scope

2. UAT Assumptions and Constraints

After the definition of our UAT scope, we need to be aware of the assumptions and constraints of the test. These assumptions and constraints include timing and available resources, as well as test documentation processes.

For our test case example of testing Trello’s archiving feature on desktop, constraints could be the operating system to be used and specific browser versions. In addition, we must also clearly state the defined assumptions, such as how our test environment looks like, or how a tester should handle the error reporting.

User acceptance testing example: assumptions and constraints

3. UAT Risks

As UAT is a very crucial part of the software development cycle, we must look at potential UAT risks while planning, executing and analyzing our UAT test case.

In our example we could face some of the following risks during UAT:

  • Not properly trained UAT testers: Our UAT testers might not be properly trained and don’t have complete knowledge of the business and user needs.
  • Incomplete UAT environment: Due to lack of resources and time constraints, tests might be incomplete by the defined deadline.
  • Error handling: The testers might not know how to properly report errors and bugs while testing.
  • UAT test failure: Sometimes the developed features are incomplete and lack too many bugs which do not allow a test case to be completed at all.

User acceptance testing example: risks planning

4. UAT Team Roles & Responsibilities

Participants of a UAT team can vary from project to project. The entire UAT team will be responsible for coordinating the preparation of all test cases and its execution.

Our UAT team will ensure …

  • that defined test cases are planned and conducted accordingly
  • that test results are documented and shared among the project team

UAT test case example: defining team roles and responsibilities

5. UAT Entry Criteria

The entry criteria ensure that everything is in place that allows the conduction of a user acceptance test. In order to start a UAT test for archiving feature of Trello, the following main criteria must be available:

  • The development of the archive feature is fully completed
  • All reported bugs are fixed
  • The UAT test environment is available & the testers are trained to start the UAT test

user acceptance testing example: Defining entry criteria

6. UAT Requirements-based Test Cases

While all previous steps aim to ensure a well-executable test case, it’s now time to describe the actual test case itself to be successfully conducted by the UAT testers.

As User Acceptance Tests aim to verify if business and user requirements are met, a test case procedure could look like this:

  1. Please visit: Trello.com
  2. Log in with the following credentials:
    Mike
    123
  3. Open the available Trello board
  4. Archive the first Trello card on the board

Expected result:

  • This Trello card will be removed from the board
  • This Trello card will be moved to the Archive

UAT example: requirements-based test cases

In order to execute a test case, testers follow the described test cases step by step. Ideally, the tester can successfully execute the test. However, one important part of UAT testing is to report unexpected behaviors of the software, or even real bugs. A UAT testing tool like Usersnap’s helps support UAT testers to report errors, track bugs, and other flaws while executing a UAT test case without even leaving the test context. Usersnap is present in the application and can be invoked every time the tester experiences glitches or bugs.

UAT tool for UAT example

With Usersnap in place, you can execute a test case in an efficient manner, while all bugs and errors are reported on the fly without leaving the test scenario.

Since all created bug reports are directly sent to your project dashboard, your project managers and developers can easily reproduce the identified bugs and fix them timely.

7. UAT Test Results

After successfully completing the UAT test cases, every tester must provide their test results. A well-documented UAT test case enables the product or project team to conclude on the next steps and define next actions depending on the test results.

UAT example: uat test results

8. Document Signatures

Last, but not least, both the service owner and project manager, need to sign the conducted test cases. After sign-off, the tested feature is good to go and available for production.

UAT example: UAT document signature

Wrap Up – User Acceptance Testing Example

All in all, we’ve shown you all the relevant steps for conducting a UAT test case. You can find the fully conducted UAT test case example for Trello here (and as a PDF version here).

From identifying the UAT scope and risks to describing and executing the particular test cases, such a user acceptance testing example shows you the necessary, practical tasks.

Bonus: Get Your Usersnap UAT solution

In order to start with User Acceptance Testing, I’d love to recommend our very own User Acceptance Testing solution from Usersnap. Used by small to large companies, like Canva, WPEngine, Instacart, Microsoft, Hawaiian Airlines, and others, it helps you manage your UAT efforts.