What is Usability Testing?
Usability testing is a kind of end-user testing that measures the user-friendliness of an application. It is usually conducted on a small set of users who have no prior experience with it and systematically evaluates the software product's intuitiveness.
Usability testing finds gaps between the expected user behavior and the actual user actions. It aims to evaluate how easily users can use the software by answering questions like:
- Do users find the application aesthetically pleasing?
- Can they find information in minimum clicks?
- Can they perform the actions with ease?
- Do they understand the error messages?
- If they are unable to understand something, did the help work?
- What is their mental state? Do they feel relaxed or anxious?
Usability Testing Techniques
Usability testing involves people and hence costly in terms of time and money. You can use various methods together to reduce the overall cost without sacrificing its effectiveness.
Hallway testing
Hallway testing, also known as guerrilla usability, is a quick and cheap usability testing technique. You ask random people, for example, in your hallway, to use your product. This method can help designers identify critical problems in the application early in the design stage.
Expert review
Expert review is a usability testing method in which usability experts assess the software's user-friendliness. It is a heuristic evaluation in which the application is evaluated based on usability principles. The heuristics popularized by Jakob Neilsen are widely used today. They are:
- Visibility of system status
- The software should notify users about what is going on promptly. For example, creating an item should somehow inform the user that the system acted successfully.
- Match between system and the real world
- The system should follow real-world words and concepts, making information appear in a natural and logical order. For example, it is better to label the delete button as Delete instead of Recycle.
- User control and freedom
- The system should allow users the ability to exit or undo an action. This knowledge increases the user's confidence and reduces frustration. The Cancel button on most forms is a good real-world example.
- Consistency and standards
- The software should follow platform and industry practices. Following conventions increases end-user learnability.
- Error prevention
- The application should prevent the users from making costly errors and recover in case of accidents. The recycle bin for documents is a good example.
- Recognition rather than recall
- Systems should not force users to memorize information; instead, looking at the screen should suffice. It is easier for users to recollect rather than remember. Most people who can't remember Russia's capital will quickly say 'yes' if asked whether it is Moscow.
- Flexibility and efficiency of use
- The software should allow personalization, customization, and shortcuts to view information and perform tasks efficiently.
- Aesthetic and minimalist design
- Applications should prefer function over form yet be pleasing to the eye. Unnecessary visual elements add to the visual clutter without adding value and should be avoided. For example, using bright colors can make a productivity application look trendy but can cause visual fatigue.
- Help users recognize, diagnose, and recover from errors
- The software should display error messages in plain language, accurately describe the problem, and propose a solution.
- Help and documentation
- The application should provide context-sensitive help to assist users in completing their tasks.
Remote testing
The primary purpose of remote testing is to reduce costs and overcome logistical challenges. This testing is performed remotely, i.e., without participants being in one location. The test subjects and the product team's facilitators are all geographically dispersed but connected using tools like video conferencing so that the usability experts can monitor their usage and body language. In some cases, tests are performed asynchronously - the test subjects perform their tasks, and the analysis happens later by studying the video and application logs.
Data-driven usability testing
The fundamental limitation of conducting a test on a sample set is that it's slow and expensive. Data-driven usability testing tries to overcome this constraint.
You make a change in the user interface in real-time and gather associated data. For example, you can change the home page message, check the percentage of visitors scrolled down and compare it with your earlier version.
A/B Testing
A/B testing, also known as split testing, is an experimental approach that aims to identify user interface changes that maximize effectiveness.
In A/B testing, two versions of the same product are released simultaneously to two audiences. You come to a conclusion based on the interaction data from both variations.
Take an example of a landing page for a software product used to sign up new users for a trial account of the software. The website can randomly show visitors a version of the landing page. At the end of the week, a simple metric like the percentage of users signed up can tell us which version is more effective.
How is usability testing performed with test subjects?
The testing team first identifies a group of people who have not had any exposure to the application. Usually, they select five individuals based on the observation that five people can identify most of the problems. It is a common practice to conduct many tests with five users rather than one massive test with many users.
Here is a sample graph on how the number of test subjects affects the number of uncovered issues, assuming twenty existing issues and a twenty percent probability of a user uncovering it.
Every individual in the group performs specific tasks in the application under test. Usability experts work out these scenarios in advance, and it depends on the application's utility. For example, in an e-commerce application, tasks could be to search for a product, read its reviews, add it to the shopping cart, and checkout, while in gaming software, it could be to change the character's avatar, purchase a power-up and play the game.
Once the users perform their tasks, usability experts analyze their behavior. They can do this by directly observing the users' actions in the application and their body language and facial expressions. In some cases, users also fill out a survey at the end.