Closing the Gap Between Test Scenarios and Real-World Use

“You’ve got to start with the customer experience and work backwards to the technology.” 

— Steve Jobs, 1997

Introduction 

How many times, as a Quality Assurance Engineer, have you seen features or even the whole applications that suffered from poor user experience and left users frustrated and disappointed? How many of these applications had unintuitive functionality, workflows that are too difficult to navigate or require too many steps and users just never finish them or stop using altogether? 

This is known as the absence-of-defects fallacy - one of the testing principles that covers the mistaken belief that software is ready for delivery if it has relatively few defects. The problem in such cases isn't technical failures - it's the usability of the product. And in order to deliver software as soon as possible, real-world scenarios can sometimes be overlooked.

To truly understand how users experience a product, visiting the site where it’s being used offers invaluable insights. It reveals what genuinely matters to end users, providing the entire development team with a deeper, more practical perspective.

How Field Trips Improve Testing

First of all, what is a field trip? It generally means stepping outside of your office and visiting workplaces of the actual users to see how they interact with the software on a daily basis.

This option might be useful for a product that already has a released version but is still under development. Not only do QA engineers see the software being used in real-world scenarios, but end users also get to know that their needs are being taken into account. Field trips give testers the opportunity to see firsthand how people with different expertise and roles interact with the application, which in turn might help with further exploratory testing and QAs won't be flying by the seat of their pants.

Observing how the software is used in real-world scenarios could also bring changes into the application that might seem minor for the development team but would significantly improve user experience. For example, you might notice that a certain group of users navigates the application using only a keyboard. Based on this observation, implementing keyboard shortcuts could make the application more user-friendly and efficient.

Attending Client Meetings: A Simple Yet Powerful Strategy

Unlike field trips, client meetings can be held not only in-person, but also virtually, making them a more flexible and cost-effective way to gather valuable insights. These meetings allow testers to hear customers feedback firsthand and they provide context for why users behave in a certain way. While field trips give better understanding of the individual user’s workflow, the client meetings might include a broader group of business representatives with different perspectives. Moreover, client meetings can speed up the feedback process. In the long run, it leads to better collaboration with clients and better feature adoption, based on user-centered design of the application. 

One can ask why Quality Assurance engineers should attend client meetings. The answer might be that since almost all features go through a testing stage before release, QAs often have the most comprehensive vision of the final product. That makes it easier for them to quickly identify potential problems that might arise from the unclear documentation or inconsistencies in the requirements. 

Leveraging User Flow Data and Analytics

Even though field trips and client meetings provide deep insights, they are still limited to a small number of simultaneously observed users. Field trips can also be quite inefficient in terms of cost and time. If our goal is to gain knowledge about behavior patterns of much bigger groups of people throughout longer periods of time, then we might prioritize analytics tools over in-person visits.

Analytics tools such as Google Analytics, Pendo, Hotjar, Userlytics, and many others provide valuable insights into user behavior by collecting data across different devices, demographics, etc. This makes it easier to track, measure and justify changes in the application. Heatmaps, often drop-off points, click patterns - integrating such data into QA processes ensures that testing aligns with the real-world scenarios. 

For example, imagine that your application allows users to customise table views and save them as favourites. However, if users don’t know about this feature, they might constantly rearrange columns manually. It’s not something critical to them, just frustrating, so no one reports it and the issue remains unnoticed. After integrating an analytics tool into the product, the tester notices that the ‘Add to favourite’ button is rarely clicked. Now the development team can take proactive measures - either to create a user guide to highlight this feature or to change the position of the ‘Add to favourite’ button to a more accessible one.

The Bigger Picture: Enhancing Collaboration and Product Quality

Adopting a real-world perspective in QA processes can lead to significant improvements in overall software quality and user experience. Quality Assurance engineers can be involved in user experience discussions, they can stay in contact with the customer support team and leverage gathered data to identify common and recurring issues, acting as a bridge between technical implementation and real-world scenarios. Collaboration with users or business representatives allows testers to support usability improvements that benefit the end users, making software not only technically reliable and secure, but also more efficient and user-friendly.

Concluding Thoughts

What is a successful app? It’s an application that not only delivers the requested functionality, but also provides a high-quality user experience. It’s an application that cares about its users. By putting themselves into the user’s shoes, whether through field trips, client meetings or analytics tools, Quality Assurance engineers can help create a more efficient and user-friendly product.