TestingPod

Want to Build Software Users Love? Integrate Empathy into your QA

Written by Juliet Ofoegbu | October 16, 2024

The role of a software tester is often seen as primarily focused on testing technical aspects of the software. However, an important part of ensuring quality is also understanding the user experience and considering how real users might interact with the product.

Imagine you built an app. At a glance, everything might look fine, but as actual users start to use it, they encounter issues. Maybe a particular button doesn’t do what it’s supposed to, or a simple process takes a user too many steps to complete. You’d agree that this could be frustrating.

This is where empathy comes in.

Empathy in QA means seeing or using the product from an end user’s perspective to anticipate how they might feel. But why does it matter?

Why empathy matters in QA

You don’t just want to ensure that your product works; you want your users to have a delightful experience.

You’ve probably had a bad experience using a product or struggled using one, or worse still, stopped using one entirely due to a bad user experience. I know I have. By employing empathy in your testing process, though, you can help users avoid frustration by understanding their potential challenges and preventing issues that technical tests might miss.

Let’s look at how empathy can be applied at different testing stages.

Empathy in Test Case Design

Test cases often focus on the functionality of the product. However, empathetic testers take it a step further by also considering the emotions and frustrations of the user.

What frustrations might users encounter? How easy or confusing are certain features for someone unfamiliar with the app? After considering the user’s potential emotions and frustrations, only then can you incorporate empathy into your test case design.

Let’s say you’re testing a mobile app for first-time users. You can ask yourself these questions:

  • Is the onboarding process easy for someone with no technical background to understand?
  • Are there too many steps or technical terms used that someone with less technical experience could find confusing? Remember, not every one of your users would be familiar with technical jargon.
  • Can a person with a disability use this app effectively?

By considering these questions, you’ll design test cases that ensure the app functions correctly and also provide a smooth and enjoyable experience for users. If you were designing test cases focused on testing a simple onboarding process, a typical test case might look like this:

Typical test case:

  • Test scenario: Verify the onboarding process functions correctly.
  • Steps:
    1. Launch the app as a new user.
    2. Complete the onboarding process.
  • Expected result: The user successfully completes the onboarding process without errors.

However, if you applied empathy in your test cases, it might look more like this.

Empathetic test case:

  • Test scenario: Verify the onboarding process is intuitive for first-time users with no technical background.
  • Steps:
    1. Launch the app as a new user.
    2. Complete the onboarding process without external help.
    3. Watch out for complex language, jargon, or unclear steps.
  • Expected result: The user is able to complete the onboarding without encountering technical jargon or confusing steps.

The empathetic test case verifies that users aren’t frustrated or confused, potentially reducing the churn rate for new users.

Empathy During Functional Testing

Functional testing ensures that software functionalities work as intended.

But even if a feature works technically, a user could still be frustrated by lengthy processes, poor design, or a clunky workflow. You can apply empathy in function testing by focusing not only on functionality but the ease with which users can interact with these features.

Let’s assume you were testing an e-commerce application. While functional testing confirms that the checkout button works, empathy verifies that the process is intuitive and easy for users. Testing the 'Add to cart' feature means you don’t just test that the products get added to the cart when the button is clicked but that the user has a good experience during checkout.

To apply empathy, you can ask yourself, 'Is the “Add to cart” button easy to locate? Does the checkout process feel smooth, or are there unnecessary steps that could confuse the user? Are the instructions clear and intuitive?”

By putting yourself in your user’s shoes, you’d be able to catch issues that functional testing alone would be able to identify.

Empathy in Exploratory Testing

Exploratory testing is an unscripted approach that allows testers to use their creativity and intuition to uncover unexpected issues and bugs in the software. In other types of testing, testers follow predefined test cases, but in exploratory testing, testers learn and test simultaneously.

Consider how you could apply empathy while conducting exploratory tests for a mobile banking app. To put yourself in the user’s shoes, you could ask yourself.

  • What would a user with limited time try to do first? (Perhaps they want to quickly check their account balance or transfer money.)
  • How would a user under stress navigate the product? (A user who quickly needs to transfer money may become frustrated if the process involves too many steps.)

By considering several user perspectives, you'll be able to identify issues that would impact actual users' experiences and improve your users’ overall experience.

Empathy in Bug Reporting and Communication

Empathetic testing also extends to reporting bugs and communicating, as it results in faster bug resolutions. When reporting a bug, don’t just list the technical details, explain why the bug matters from a user’s perspective.

Here’s an example

Non-empathetic bug report: There’s no error message for an incorrect password

Empathetic bug report: Users signing up may feel confused if there's no clear error message when the password doesn't meet requirements.

Notice that the second report doesn’t just report a technical issue; it specifies how the issue might affect users. This provides more context and makes the issue more real and urgent.

Developers are more likely to deal with this quicker since it is something that they can relate to.

Empathy in Usability Testing

Usability testing focuses on observing real users use the product and try out its features.

As an empathetic tester, go beyond observing the technical functionality of the product from start to finish. Observe their emotions. While conducting an in-person usability test, watch out for signs of user frustration, confusion, or joy. You can observe these emotions through various techniques, such as facial expression analysis, body language observation, and conducting post-test interviews.

By observing these emotional responses, you can provide feedback and offer suggestions to improve the overall user experience, ensuring the product is functional and enjoyable to use.

Turning Empathy into Action

In QA, empathy is more than just a soft skill, it's an important requirement for building great products. It enables you to see past the code and into the actual experiences of actual users

Next time you design a test case, conduct functional or exploratory testing, or write a bug report, take a moment to ask yourself, How would I feel if I were the user? Answering this question can make a difference in delivering a functional product that people love to use.

Remember, you don’t just want to be a software tester; you want to be an empathetic software tester.

References: