In this blog we’ll cover how to write web performance tests to monitor the performance of user flows. User flow tests help us determine whether critical paths perform quickly and reliably.
In a previous post Web Performance Monitoring for UX we covered:
- Why you should leverage performance monitoring for UX,
- How to identify key users flows, and
- How to define measurable performance goals
Once you know what user flows you’d like to monitor and what performance goal you’d like to benchmark against, create a test for that user flow in your web performance monitoring platform.
For the purposes of this post we’ll look at the steps to configure a multi-step user flow in the Rigor app, but we’ll keep our concepts high-level so you could apply similar steps when building tests in any synthetic monitoring tool.
Complete Your User Flow Test Checklist
Before building any new multi-step user flow test, consider the following:
- What browser, viewport size, or device type should I use? For the purposes of testing this user flow, will you need to simulate coming from a specific browser, viewport size, or device? Or, will you want to use a browser, viewport size, or device type that is most popular with your real end-users?
- What is the starting URL for the user flow? Will the end-user start from a homepage? An article page? Some page hosted by a third party site or web app?
- Will I need any credentials or authentication as part of this user flow? If yes, what username and password will you use? Does this user exist or will you need to create it before you can begin testing? Note: as a best practice, consider the level of permissions that an end-user would have and make sure that your credentials for testing have the same permissions levels. This will not only make sure that your user flow most correctly replicates a genuine end-user’s experience, but will add a level of security between your system and the third-party application that you’re using to monitor performance.
- Are there any session-related limits that could cause errors? Especially if you’re using some credentials, can a user be logged in with those credentials from more than one location concurrently? Or, will you need to make sure that tests are staggered to prevent session collisions?
- What is the order of actions for the user flow? Outline a set of actions that the end-user would take to perform this user flow in their browser.
- What success indicators will I need to validate? Sometimes it’s not enough that all of the steps can execute sequentially; we may have success criteria or elements that we need to verify along the way. Outline what success indicators need to be validated and identify where they occur in the sequence of actions.
- If success indicators fail, who should receive alerts? When monitoring for UX your primary purpose is to gain visibility into how a user flow is performing related to a speed or reliability benchmark. But, what if your UX test encounters a functional bug? Should you notify the UX team? Or, should you send the alert information straight to your developers? Different teams have different processes based on their established DevOps workflows. Generally, we find that it’s helpful to cut out the middle-man and alert engineering teams directly. If you go this route, be sure to communicate with your team about what to expect and who should respond to alerts before enabling your user flow test.
Download our free printable worksheet – the User Test Checklist – here.
Create Your User Flow Test
Now that you’ve considered all of the requirements for the user flow test, configure the test in your application. Most web performance applications offer a few different ways to script user flow tests:
- From scratch: log into a user interface to define actions and success criteria;
- From source code: write a scripted test, save it, and upload it to a system; or
- From an IDE or recorder: record a user flow in your browser and upload it to a system.
The Rigor app allows users to create tests with a step builder in the user interface or with source code. Rigor accepts source code saved or copied from the Selenium IDE recorder.
If you will be creating tests with source code or with an IDE, be sure to check with your provider to make sure that you understand what what formats are accepted and whether any proprietary software must be downloaded in order to record and script tests.
The Rigor app lets users create multi-step UX flow tests from Selenium IDE.
Enable Your User Flow Test
After you’ve created your user flow test, take these final steps:
- Configure any customizations: Make sure your test is configured to run from the preferred viewport and device type. Apply any other customizations – like excluding specific files – that may be needed to ensure that the test will work as designed for your use case.
- Configure location and frequency settings: Define how often you’d like to run your test and from what locations. Note: the Rigor app does not multiply costs based on the number of locations or the frequency of runs, but some other systems may charge more per measurement. You may want to double-check with your provider and make sure configurations are within your limits.
- Configure alert settings: Define who (if anyone) should receive alerts if the user flow test fails due to a functional error.
- Play back your test steps: Play back your test in the web performance tool and confirm that all of the steps work as designed. This is important because web performance tools may rely on web drivers that have nuances related to timings or how specific selectors must be to find elements on a page. Note: the Rigor app offers before/after screenshots in testing to help users confirm that user flows are working as expected.
It’s certainly possible to build excellent user flow tests without following a strict process like the one outlined above, but checking all of the boxes ahead of time can be especially helpful if you’re working with a team or if you personally like to avoid the “trial and error” method. Most importantly, make sure to configure your user flow test to accurately simulate paths followed by real users.
Passionate about UX and looking to measure user flows as part of your strategy? Then you’ll love Rigor! Rigor monitors your user flows and can alert you when performance issues are introduced. Book a call today to start your free Rigor trial.
This post belongs to a series. Previous post: Web Performance Monitoring for UX. Up next: Improve User Experience with Web Performance Data.