User-Centric Testing: QA Focused on the Customer
Applications need customers, and customers are diverse. What one customer loves about the software might make another delete it. When customers cannot accomplish their purpose, it’s clear the application fails to match the customer’s needs, hurting profitability and business growth. Conversely, customers are loyal when they receive working applications that enable them to do what they want without unnecessary hassle or workarounds.
Whether Agile or not, most traditional testing teams miss defects because testing verifies that the features and functionality meet the acceptance criteria. Testing teams assume that if the functionality meets requirements, it meets the customer’s needs. Maybe, or maybe not.
User-centric testing puts the customer’s wants and needs before the functionality requirements. With a user-centric testing approach, testing focuses on the customer rather than verifying that the application functionality fulfills requirements.
This blog explores why testing strategies must shift to a user-centric approach and how that shift changes the QA process to deliver applications that customers love.
What is user-centric testing?
User-centric testing is a strategic approach that places the customer at the forefront of application testing. Traditional or Agile QA testing teams tend to test based on technical specifications, requirements or user stories — this testing aims to confirm the application meets requirements, and that’s it. With user-centric testing, the customer is the focus. Testers must ultimately determine if the user story or feature effectively fulfills the customer’s needs, which means they can question the stories, design and requirements if need be.
User-centric testing is not the same as usability testing. The difference with usability testing is that it verifies whether the application is user-friendly. User-centric testing goes further, verifying the application is both user-friendly and designed to provide features that serve the customer’s needs enough to create a loyal customer base.
Core principles for user-centric testing include:
- adopting a user-centric mindset that manages and controls the testing lifecycle;
- incorporating user-centric design principles into test development and execution;
- prioritizing customer wants over technical or provider preferences;
- involving customers in testing to gather ongoing feedback;
- validating in real-world situations, not pre-set and prepared test environments;
- testing early and often throughout a sprint or iteration;
- embracing diverse perspectives to expand test coverage.
Performing user-centric testing requires a different mindset and intimate understanding of customer expectations, pain points, business purposes and preferences. The development team, including testers, must understand how customers will use the application and what purpose the application fulfills.
For example, many healthcare applications create workflows that work for the app, not for the user. In these cases, the users are expected to alter their workflows to match the software rather than developing the application to work according to user expectations. This counterintuitive approach is one reason medical applications are often met with hostility and non-acceptance among users. If you want users to love the application it has to fit into their workflows seamlessly.
Moving from traditional to user-centric testing
QA teams must fundamentally change processes when moving to a user-centric testing approach. Rather than test each story and move it to completion after passing, testers focus on whether the story meets the customer’s needs. As a tester, ask whether the feature is useful. Does it improve or hinder the customer’s workflow? Can they accomplish the task?
User-centric testing breaks from traditional requirements-based validation in that testers must focus on customer satisfaction. Meetings and standups may change to design or code change discussions to ensure features meet this user-centric testing focus. Sometimes, the latest and greatest technology or programming isn’t needed. If the coding is less sexy, but it improves customer productivity, that’s a win. In debates and discussions, the group should ultimately prioritize functionality that helps the customer quickly and efficiently accomplish their goals.
Of course, there are options for emphasizing user-centric testing. Software providers may focus internal testing teams on user-centric functionality and supplement with crowdtesting. The best approach uses both crowdtesting and traditional functional testing in complementary ways to deliver a truly user-centric application.
Traditional functional testing will catch defects using standard regression, integration, smoke and functional testing techniques. Crowdtesting will catch bugs that hide in the development team’s blind spots, including those defects only seen in production or localized environments. These are the defects that mysteriously slip into production code and are not reproducible in test environments, including critical defects that derail customers and require rapid fixes, patch builds and retesting.
Benefits of crowdtesting for user-centric testing
Crowdtesting gives an organization expanded testing coverage that an internal team cannot achieve. Crowdtesting benefits for user-centric testing include:
- high agility and scalability depending on testing needs;
- diverse pools of testers with various customer characteristics;
- actionable, unbiased testing with users with varied expectations or experiences;
- expanded test coverage across real-world customer situations;
- increased value over an internal-only approach.
Crowdtesting enables organizations to use a world of resources as test customers without consuming internal resources. Other options include combining efforts across internal teams and supplementing as needed with crowdtesting. Internal teams across product management, development and testing can work from user personas and customer journey maps that provide a realistic view of the customer’s goals, pain points and purpose for using the application. Supplement testing throughout the development cycle with crowdtesting to gather feedback while coding is still in progress. Development teams can then make the changes necessary to provide a working application that builds customer loyalty.
E-Books
6 Steps to Get Started With Crowdtesting
Learn the six steps to help you onboard crowdtesting quickly and achieve value.
The importance of the customer
Regardless of testing teams’ technical expertise and experience, defects always escape to production. Test environments rarely provide an exact match of the production setting, and they can’t provide diversity of experience in connectivity and performance. Today’s applications must compete in tight markets, which makes it a challenge to achieve success and ROI. In addition, the complexity and highly integrated nature of modern applications makes thorough testing nearly impossible.
Improve testing results by changing the priorities of the product, development and testing teams to focus on the user, and supplement existing testing with crowdtesting. Crowdtesting services, such as those provided by Applause, provide unbiased feedback from users who mimic the workflows of the intended users. The returning feedback is customer-focused and based on a user’s actual experience with the application.
Crowdtesting is the fastest, most cost-effective way to ensure comprehensive user-centric testing, in the end creating an application that makes customers happy. Crowdtesting also provides valuable feedback to help plan for future development that’s driven by customer feedback. Remember that a customer’s first impressions of an app might also be their last impressions; getting it right the first time is critical to digital success.