
Testing Specialists Shouldn’t Advocate for the Customer
A long time ago, when I started in software, I read about what software testers should do as part of their roles. One thing that came up was the notion of testers being advocates for the customer. In this model, testers would find issues with software and advocate that certain issues be addressed and remedied “on behalf of the customer”. After all, a tester can find issues, and who else can defend what the customer wants and needs better than a testing expert?
It turns out that a bunch of different people could advocate for the customer, and should.
For example, a product manager or product owner may regularly get direct feedback from customers, through interviews or surveys for example, where actual end users of software tell them exactly what they do and don’t want. Customer support engineers see firsthand problems customers run into and help address those issues, possibly feeding information back into product development teams. And let’s not forget our dear friends in customer success and sales, as these people regularly talk to customers and potential customers about all kinds of things. These roles have the ability to advocate for the customer since they actually know what the customer might want.
Sometimes it feels correct for testers in development organizations to want to advocate for end users. In some cases, testers are the end users. A tester who works for a bank and uses an online portal for that bank as a customer might have some insights in actually using the software. This might be even more true for software such as test case management or test automation, if you find a tester working for a company creating such software. Often, this isn’t actually the case: a tester may be an excellent software professional contributing to software they will never use. In fact, they might not even come into contact with anyone who does use it. I’ve worked on a couple of software products that I certainly will not use for one reason or another.
The reason I point this out is that testers who try to advocate for “the customer” might have good intentions but actually not be helpful. Guesses - even educated ones - might lead to addressing quality issues that don’t really exist. This wastes time and effort for everyone. Arguing with folks in product over hypotheticals can be a real drain on resources and enthusiasm. It also can create or worsen the perception of “testing as bottleneck” that slows everything down, since testers may chase unnecessary issues.
Naturally I believe quality is everyone’s responsibility, but good teams work together.