§11.3.

Informal user testing

There is an abundance of bad software in the world. I often wonder ‘who tested this software?’ Unfortunately, the probable answer is that nobody tested the software.

User testing is not difficult. It can be done in the hallway, with your neighbor, in a dorm or even using videoconference software. It doesn’t require expensive equipment, specialized software or expert training. All it needs is a willingness to put software in front of real users and be prepared to notice when things don’t work.

A user testing script

During user testing, your users must experience your software as though it is real.

User testing is not a sales pitch or a presentation. In a user test, your user should interact with your site while you observe.

There are many approaches to user testing. I have found the following script to be very effective in getting clear feedback quickly:

Dialog / Test script

Notes / Explanation

Introduction:
“Hi, my name is Ben and I wonder if you could spare 5 minutes to give me some feedback on a project that I’m doing for [my studies]?”

This lets potential users know how much time to expect and the purpose.

“Can you tell me your name?”

This builds rapport. Try to ensure your user is comfortable. Please make sure they’re relaxed and that they’re seated comfortably.

“I’ve just started working on this project and I’m looking for your feedback. It is still a rough prototype but I’m interested to see how people use it.”

By downplaying the effort you’ve already put into the project, your user will not be afraid to give harsh feedback.

“Before we begin, can you tell me how you currently [keep track of your shopping lists]?”

This helps you understand how your users currently solve their problem.

“Great! Now, I’d like to imagine that you [would like to add a chocolate bar to your family’s online shopping list].”

This gives your user a goal to solve.

“Could you please speak aloud and tell me what you’re thinking as you use it?”

At this point, you should give your user the application and let them use it

Say as little as possible when the user is testing your application

It is human nature to want to help the user when they get stuck. However, as much as possible, you want to see your user struggle so that you know the confusing parts of your application. Only provide hints or guidance if necessary, and only after you’ve noticed where the user has become stuck.

“Thank you! I noticed that when you [were logging in, you clicked on the about button], could you explain that to me?”

If you have questions, try to save them for the end of the test. Ask the user with gentle prompts that don’t make them feel stupid.

“Okay, that’s fantastic feedback. Thank you very much for your time. I appreciate it and I’ve noticed many ways that I can make my application better!”

Don’t forget to finish with gratitude!

It is crucial to run user tests with strangers. Strangers are more likely to be honest, and are more likely to offer a new and unfamiliar perspective. Pre-existing relationships (i.e., friends and family) will bias a user test.

I have seen many developers and startup founders be afraid of asking strangers for feedback. You will have some people who don’t want to be interrupted — they will say “no” and no harm is done. However, most people appreciate being part of a user test. It is an unfortunate reality of modern life that many people never feel genuinely heard and appreciated. Being asked for honest feedback and then being heard is, in fact, a precious gift that many people love to receive!

When to test

The sooner you run user tests, the sooner you will discover usability issues. The longer you wait, the harder it will be to fix the issues.

Test early and test often! Don’t be afraid to test incomplete, ugly or buggy applications. If your application is ugly, your users are more likely to give you honest feedback because they will recognize that it is an early version.

Exercise: Conduct a user test

Memorize my testing script — not the exact words, but just the general flow of the user test.

Find a stranger and try the script. Don’t use a member of your family, a friend or a romantic partner. See what it helps you uncover about the usability of your web application.

Which parts of the script worked for you? Are there parts of the script that you would change?