I recently had another great discussion with a developer, essentially over hot drinks in the kitchen. We covered all sorts of topics, a lot around how testers and developers can help each other when communicating in bug reports. It’s a sensible and productive conversation to have, since both sides – and maybe others on each team – can make simple changes that really benefit the other.
Naturally, we also talked about those awkward bug reports – ones that are hard for either side to reproduce. The developer appreciated and understood that as testers, we don’t want to write bug reports where it’s not entirely clear, or the steps aren’t reliably reproducing the problem, or we’ve only seen it happen once – it’s really bad, but we’ve no idea what we did! These things happen.
I agreed and said that I really don’t want to be raising those sorts of bugs. I’ll put an appropriate amount of time in before conceding that the benefits of raising it now outweigh the cost of pressing on. Maybe the developer can suggest a route to reproduce it, just from the vague description or error message? Maybe the developer can quickly guess what’s happened and doesn’t need lots of reproduction steps?
I also said that I didn’t get any pleasure from raising bugs generally. Then had to stop myself. Wait a second… I do take pleasure from it… but from where?
It’s certainly not that I’ve “broken” something that a colleague has been working on, nor is it that I enjoy having to tell them they’ll need to make more changes or fix something. If anything, I’m really wishing for the opposite outcome of the test.
It’s also not that I’m secretly celebrating the fact that they’re there because of an ambiguous specification, or tight deadlines, or misunderstandings. The world isn’t a perfect place and we’re all working hard to do good things, at the right time, to a high standard.
So what does make me swing my chair over to my tester colleague and eagerly say “guess what I’ve just found”?
What gives me pleasure is how I’ve found the issue. Maybe I’ve created some awesome automation that’s highlighted a memory leak through having done millions of combinations of tests. Maybe I’ve built in some analysis of key metrics that have suddenly flagged up a regression we’ve not caught anywhere else. Maybe I’ve tried the new feature in combination with something else we didn’t think would have an effect but does. Or maybe I’ve spotted something that’s been right under my nose for ages and I’ve managed to take a step back to notice it.
These things make me happy as someone who is a professional tester. The fact that the company can then make a better informed decision (fix it, document it, don’t ship now and wait until we’ve dealt with it, etc.) as a result of that work, and the fact that I/we have learnt something about how to test it, are the cherries on top of the cake.