Testing is an essential part of developing your Salesforce instance. With any change in your system comes the risk of losing functionality if it is not tested properly, and we always recommend testing and sign-off for any changes to your Salesforce system before deploying to the live environment. This is referred to as User Acceptance Testing, or “UAT”.
UAT takes place after a change has been developed and tested internally by Hyphen8, it is then typically deployed to a testing sandbox, and passed to you for sign-off.
So as a UAT tester, what are the main things you need to consider? We have put together 7 hints and tips to help make UAT as successful as possible.
#1 Consider it early
UAT takes time, commitment and resources from you or members of your organisation. It is important when you raise a request with Hyphen8 that the time and resource requirements for UAT are factored into any timeline.
#2 Understand the change(s) being made:
The people carrying out the UAT should understand the change(s) being made and how the system is expected to perform. Without this understanding, the testing may not cover all the required areas and could result in a change being deployed that has a negative impact, or simply does not do what was required in the first place.
#3 Create a Test Log
Keep a detailed log of the required testing scenarios and their desired outcomes. Your Test Log should contain information including:
- Scenario description e.g. “add a new payment to an application”
- All required steps to execute the scenario
- Which roles/people are needed for each scenario
- Date of testing
- Record details, including the URL
- Does it work as expected (Pass/Fail)
- If a scenario fails, full details including screenshots
Your UAT Test Log can be as simple as an Excel spreadsheet, or you can utilise a wide range of other tools. If you would like advice on creating a UAT Test Log, please reach out to us by emailing email@example.com
#4 Plan both positive and negative test scenarios
Positive scenarios need to explain the steps to be taken to execute the change(s) to ensure it works as expected and you do not encounter any errors. Essentially, you are checking that it works and does as you asked! Your negative scenarios are the opposite. In a nutshell, can you break it? And are you able to carry out any steps that you should not be able to? For example, if a change includes a rule that a field is mandatory, can you move forward without completing it? Testing must also check that the changes/new functionality can only be accessed/used by those profiles that need it.
#5 Fully resource your testing
Ideally, UAT is completed by an end user who will be utilising the affected part of the system in their day-to-day role. While this can take up precious time, involving the end-users at this stage ensures that their role’s specific processes are considered. and prevent having to revisit this in the future.
Once you have tested, please provide your testing feedback to Hyphen8 to review so we can make any necessary changes to what has been built. After any further changes have been made, you will then be asked to test again to ensure the development now matches your expectations.
#7 Get the initial requirement right
Finally, the best way to ensure smooth, successful UAT is to ensure that the initial requirement logged is correct and as detailed as possible. When raising a case with Hyphen8, please provide as much information as possible including:
- A detailed description of the requirement or issue, including screenshots and record IDs where relevant
- Confirm where in the system this change needs to be made
- Information on who will be using this functionality and which roles and profiles need to access this
- Which roles and profiles should not have access or be able to use this functionality
- Any required timescales, if applicable
While not all the above will be relevant for everything you raise with Hyphen8, we hope you have found this helpful. If you would like to discuss best practice for UAT with us, please log a case at firstname.lastname@example.org