DEV Community

Cover image for Chrome Recorder: Record, Replay and Measure User Flows
Michael Hoffmann for This is Learning

Posted on • Originally published at mokkapps.de on

Chrome Recorder: Record, Replay and Measure User Flows

Typically, a user needs to process multiple pages or steps to finish his journey, such as submitting an order or completing a registration. If we as developers need to develop one of the last pages of this user flow, we need to manually process all the previous pages/steps every time we refresh the page or need to restart the flow.

If multiple team members (also tester) have to do the same steps repeatedly, this costs a lot of time and, therefore, money. In previous projects, we often developed custom tools to proceed to certain pages/steps in the application automatically.

But now, the Chrome browser provides this functionality as a preview feature.

What is Chrome Recorder?

Chrome Recorder is a preview feature in the Chrome browser designed to record, replay and measure user flows of an application.

You can start a recording, execute the steps you’d like to record in the app (such as typing or clicking), and export the recording as JSON file, Puppeteer script or @puppeteer/replay script.

It’s then possible to replay the recorded user flow and measure the performance of the run.

Open Recorder

To find the Recorder, you first open up the Chrome DevTools.

Command+Option+C (Mac) or Control+Shift+C (Windows, Linux, ChromeOS).

You can open the Recorder from the options menu:

Open Chrome Recorder from options menu
Open Chrome Recorder from options menu

Alternatively, you can open it from Command Menu:

Open Chrome Recorder from Command Menu
Open Chrome Recorder from Command Menu

Record

I’ll be using Vue 3 Form Wizard to demonstrate the recording & replaying of a simple user flow.

The demo page provides a simple wizard with multiple steps containing common input types like text & select inputs.

Let’s start the recording:

Start Recording
Start Recording

The selector attribute textbox is optional. See Customize the recording’s selector.

Once you hit the record button, you can enter all data in the wizard. If you are done, hit the “End recording” button at the bottom of the recorder panel.

Recorded User Flow
Recorded User Flow

The following GIF visualizes this process:

Record user flow (GIF)

It’s also possible to manually edit the recorded steps. For example, you can manually change selectors:

Change Selector
Change Selector

Additionally, you can manually add or remove steps:

Add/Remove Steps
Add/Remove Steps

Replay

After recording a user flow, you can replay it by clicking on the “Replay” button.

Replay Recording (GIF)

When replaying a user flow recording, the Recorder waits until the element is visible or clickable in the viewport or tries to automatically scroll the element into the viewport before replaying the corresponding step.

It’s also possible to simulate a slow network connection in the “Replay” settings:

Simulate Slow Network
Simulate Slow Network

Measure performance

You can also measure the performance of your recording by clicking the “Measure performance” button. This way, you can regularly measure the performance of critical user flows.

Performance Panel
Performance Panel

Conclusion

The Chrome Recorder is valuable tool that will boost my productivity during development. It’s still a preview feature, but I think it will become a must-have tool for web developers.

I recommend reading the official Chrome blog post.

If you liked this article, follow me on Twitter to get notified about new blog posts and more content from me.

Alternatively (or additionally), you can also subscribe to my newsletter.

Top comments (2)

Collapse
 
egvaldes profile image
Ernesto Valdés

I recently used this to measure performance before and after some changes, it's really useful, and while the functionality is nothing new, having it right there built in the browser is awesome.

That said, it shows that it's still experimental. Something that I really missed was a way to duplicate or share the recordings. Sure, I can export it, but there's no way to import it that I could find, or even just duplicate a recording to test a slightly different case without changing the original flow.

Also, it sometimes just stopped working and I had to open a new tab.

I really hope they give some focus to this tool, it really is super useful and I would definitely integrate it to my workflow once it's more polished.

Collapse
 
mokkapps profile image
Michael Hoffmann

Yes, I totally agree!