User Acceptance Testing (UAT) is one of the most important tests companies need to perform before launching a website or product. Especially if they are developing websites or digital products for clients in their daily business like agencies do. Not doing it, can cost thousands of dollars if you want to fix a bug right before going live. It is estimated that software bugs cost the worldwide economy 1.1 trillion US$ in 2016.
Properly doing User Acceptance Testing costs only a fraction of fixing bugs in a production system.
We created this guide based on what we have learned talking to some of our almost 1,000 customers. It shows you how an agency, named SuperHQ-Agency, saves money by successfully implementing User Acceptance Testing and hopefully you can use some of these learnings too.
You will learn how to set one up, as well as how to improve it and save a lot of human resources (aka money in your pocket) thanks to easier and more efficient testing methods.
So here we go:
Why is User Acceptance Testing so important?
In a nutshell: it saves you money.
Take SuperHQ-Agency, for example.
They’ve been hired by a big, well-known company to develop a website for them. SuperHQ-Agency wants to make this big client successful and to do so, they’ll have to think about getting the experience of their customers right.
That’s where user acceptance testing comes in; SuperHQ-Agency will put the website, they’ve developed, through rigorous testing. This testing is necessary before handing it over to their big client, making sure that everyone will be satisfied… the company’s customers included.
Which makes sense, because any website or digital product will be used by customers of the agency’s clients. But if they aren’t able to use it in the way it works for them, then they search for alternatives and bring their money to a competitor instead. #FAIL
Thus SuperHQ has implemented the so-called Shift Left Testing approach. “Test earlier and often.” User acceptance testing must not only happen at the end of the project but throughout it. The earlier you start your testing, the less money you lose.
For example, IBM estimates that if a bug costs $100 to fix in Gathering Requirements phase, it would be $1,500 in QA testing phase, and $10,000 once in Production.
This is why user acceptance testing is so important for SuperHQ and for your agency.
When should you perform UAT in your project schedule?
UAT should be placed at the end of the product development process after the development team has done quality assurance. For SuperHQ-Agency, excitement is high as they have finally concluded development of their client’s desired website.
QA has also been completed to weed out any preliminary bugs, so now they’re ready to perform user acceptance testing to find out how well this new website of theirs works in actual real-world environments.
The 3 Steps of Successful User Acceptance Testing
You get most out of UAT if you follow these steps.
It’s not just presenting this website project to the testers! Here’s the breakdown of steps for a successful user acceptance test:
Step 1 – Preparation
1.1 Setup the UAT testing environment
As mentioned earlier, successful testing needs some prerequisites. One of them is using separated technical environments (for example servers with your website/software installed on it) for development, testing (UAT) and production. Otherwise, nobody can guarantee that there aren’t any changes happening while testing is in full motion.
Testers also need the appropriate hardware—such as laptops & smartphones—to test your web project accordingly.
1.2 Analyze Business Requirements
To understand the requirements defined by the customer, all business requirement documentation must be used to define the purpose, scope, and functionality of this project. Use this customer understanding of the project requirements to develop your UAT plan.
1.3 Developing a UAT Plan
First, you have to define the main parameters of the user acceptance test:
- When is the website or product ready for UAT and when is testing considered successful?
- Who will be involved in the testing process, and what roles will they have?
- Business managers, designers, developers, QA testers, etc.
- What is the timeline and schedule for testing?
- How will the test data be collected, analyzed, and acted upon?
- What tools will be used to collect bugs, inconsistent or not working functionality, etc.?
After this step, you can begin planning test scenarios and test cases.
1.4 Identify Test Scenarios and Test Cases
As mentioned before, you shouldn’t just place your testers in front of your website project or digital product, but rather develop specific test cases for your testers to accomplish as well as the assisting material while they are testing.
You should develop these test scenarios and cases as you would develop your onboarding process for your end-customers. This will help your testers to test your project in a real-world scenario.
Test cases should be defined in a way that they know what to test and can be repeated accordingly.
Here is an example sheet of how one sample test case can look like:
1.5 Prepare Test Data
You will need test data for your test cases. Set up a process that allows you to collect and prepare test data effectively. Keep in mind that your test data might include confidential information and this data must be secured (remember that GDPR in European countries might limit your possibilities of using test data with personal information).
1.6 Issue creation and solving issues
In preparation for the user acceptance testing, it should be clear how testers can create issues, which information (and data) they have to provide in an issue/ticket and how the issue will be fixed.
Define various labels (bugs, feature-requests, usability, etc.) and states for your issues to easily order them. Remember: the triage problem can bury you!
Write down how the communication between your developers, testing team and other stakeholders involved should take place while testing.
Doing this prevents your team from the nightmare of receiving word documents, emails, spreadsheets, megabyte-sized screenshots, and endless discussions and emotions via email and other communication channels.
1.7 Choose the right issue tracking/bug reporting system
You can waste a ton of valuable resources when you’re using the wrong issue tracking system. Inefficiencies in the way you handle bug tracking and fixing can turn profitable projects into money-losing pit holes.
So choose your issue tracking system wisely. Maybe you already have JIRA software in place, Asana or a similar tool. That’s good. You should still invest some time in implementing your defined testing processes into your issue tracking tools.
1.8 Upgrading your testing environment with Usersnap
Usersnap is a visual bug tracking tool which gives your testers the ability to show issues, not just tell your developers about them.
With this extension of your current testing environment, you will save a lot of your resources as it removes the back-and-forth between developers and testers who are communicating with each other about the bug.
Usersnap can be integrated within minutes with well-known issue trackers like JIRA, Asana, Basecamp, Trello, Redmine… Keep your existing issue tracker and just boost it!
Step 2 – Execution
Tests before User Acceptance Testing
When it comes to launching new website projects or new digital products, there are a lot of tests involved, such as:
- functional tests
- HTML checks for validation
- checks for complying with accessibility regulations
Don’t forget to do them before your User Acceptance Testing.
2.1 Running your User Acceptance Tests
Once you’ve finished the preparations for the tests, then you’re ready to run the tests.
During the acceptance test, your QA team or testers complete the defined test cases from the UAT plan. As soon as they’re finished with all test cases, you can do a feedback survey to get an impression of their experience during the testing process.
2.2 Improve the efficiency of your User Acceptance Test
Most people want things to be easy. When Usersnap Classic is used in the acceptance test process, it helps make QA easier and smoother.
Why? Because you need a simple way for your testers to communicate and send an issue. With no need for explanations or training your tester to submit a new bug report shortens the testing process, saving valuable resources from your developer team.
Usersnap Classic is implemented in minutes with a code snippet for any digital product or website and it offers a small widget to capture feedback from your testers or your client’s testers.
Testers create screenshots of the current issue they are experiencing and then they can add comments or draw on the screenshot with any additional extension (like a Chrome extension, for instance).
Usersnap will automatically add important metadata like browser type, browser version, screen resolution, device, URL of the page and location of the user. Your developers will have more time for testing as they can leave out the time-consuming back-and-forth that happens when asking this information from users.
“A really great feature of Usersnap is that it automatically captures the used browser, URL, and screen size for each Snapshot” – Bobby King, The White Label Agency
Want to see Usersnap Classic in action – watch this short video
The email of the tester will be added to the submission form and a message box for further explanations. Testers can also label issues.
As soon as the visual bug report is generated in the Usersnap issue tracker it can be forwarded to 20+ tools, all of which can be integrated. Usersnap also allows you to manage issues and ask your testers questions, thus keeping your main issue tracking system clean from unnecessary bug reports.
Not only can this optimized testing and quality assurance method be used in User Acceptance Tests, it can also be used in design testing—conducted by designers to confirm the initial design concept—or in usability testing as well.
2.3 Major issues
In case your testers are experiencing major issues while proceeding with the UAT, you should stop the test and fix the issues before continuing.
Step 3 – Post Processing
3.1 Successful User Acceptance Testing
The objective of acceptance testing is to validate that all business requirements are implemented and are working correctly.
Don’t forget to hand over a written documentation of your successful tests to your client. In case your client was an active part of the User Acceptance Testing, make sure you have a confirmed and signed UAT test document at the end.
3.2 Load and Security tests
After a successful User Acceptance Test, your testing process should include two additional tests which are essential for a sustainable web project.
Load Testing & Performance Testing checks how fast your websites or web applications are responding and whether they are tolerating many concurrent requests (load test). For these testing mechanisms, there are quite a lot of tools available.
Security testing is a hot topic and often does not get enough attention. Hacks and data leaks can harm not only your brand but your financial resources too, as getting sued after your websites or web applications were found to be vulnerable will undoubtedly be a painful expense. When it comes to security testing, do your best to be thorough and try not to skimp resources.
This guide helps you in setting up your User Acceptance Testing as an agency or a similar organization. Defining a testing process will increase the quality of your outcomes and reduce the amount of negative feedback from your clients. It will make your customers happier and is a fundamental basis for a long-term relationship.
Remember SuperHQ-Agency from earlier? They’re enjoying all the benefits of Usersnap Classic and their big, well-known client couldn’t be happier with the results of their user acceptance-tested website. Needless to say, they’ll be partnering up again for future projects.
Learn from SuperHQ-Agency and discover how Usersnap Classic can help you enhance your Acceptance Testing and free up valuable time for your development team!
If you want to give it a try, you can either click the button on the bottom right (yes, just try it) or sign up for a free 15-day trial of Usersnap Classic – the visual bug tracking tool.
Some related articles about User Acceptance Testing from our blog
- What is User Acceptance Testing (UAT Testing)?
- The 5 Types of User Acceptance Testing!
- 5 Steps to a Successful User Acceptance Testing
- 6 Tips For Your User Acceptance Testing Plan
- A Practical UAT Test Case Using The Example of Trello!
- Fundamentals on setting up your User Acceptance Testing workflow
- User Acceptance Testing explained in 8 GIFs