Hallmarks of a Great Tester
If you ask me, I'll tell you a great tester
Is devious
A great tester has a streak of deviousness. Anyone can follow the lists of test cases that abundantly fill most books on testing. A great tester can move beyond these lists and dream up an endless series of gnarly methods for attacking the program. A great tester is described by developers as "sick" and "demented".
Is curious
A great tester is interested by everything. A great tester wants to understand why everything works that way it does. The best (or worst, depending on your point of view) bugs are a result of interaction between two pieces of software (applications, modules, components, whatever). A great tester knows that understanding how something works leads directly to understanding how that something interacts with another something, which interaction leads directly to bugs. A great tester manifests this curiosity in every aspect of life: how does marketing work? How are construction cranes built? Why do they add rebar to concrete? How are crayons made? A great tester's curiosity knows no bounds.
Is excited by bugs
A great tester thinks bugs are cool. A great tester shows up in a developer's office on a regular basis with a big grin eager to show off the latest nifty keen horridly awful bug that the tester found in the developer's code. A great tester boasts about bugs to other testers and eagerly listens to other testers' exploits.
Knows there are always more bugs
A great tester knows that no application is ever bug free. A great tester knows that an application that seems to be bug free is really full of bugs they haven't thought to look for. A great tester is always on the lookout for new types of bugs. A great tester views every bug found by a customer as a sign they missed an entire class of bugs.
Stays on track
A great tester knows that finding and isolating bugs to their root cause requires focus. A great tester doesn't ignore bugs found along the way, but postpones investigating them until the current bug is nailed. (And, of course, gleefully told to the corresponding developer. And boasted about to other testers.)
Scopes appropriately
A great tester knows that they will not have sufficient time to run every test case they would like to run. A great tester prioritizes and scopes their tests so that the tests most likely to find the bugs most likely to affect the customer are executed first.
Investigates weird behavīor
A great tester watches for odd occurrences. Icons that display one position off from where they should and radio buttons that don't stay set may be a simple programming error, but a great tester knows that such oddities are just as likely to be but the tip of a nasty bug. A great tester goes beyond "That's weird but that's life" to "A-ha! That's what's going on!"
Writes precise bugs
A great tester takes the time to narrow a bug down to the minimum number of steps necessary to reproduce a bug. A great tester tests around a bug to understand what the bug actually is. A great tester writes bugs that state the bug exactly and clearly distinguish between what is proven fact and what is conjecture on the part of the tester.
Has passion for the customer
A great tester knows that they are the last defense against the customer receiving a product that doesn't serve the customer's needs. A great tester understands every aspect of the customer. A great tester understands what the customer needs to do and how the customer wants to use the product. A great tester looks beyond the customer's needs to see how the product can revolutionize the customer's tasks. A great tester promotes the customer's point of view throughout the product cycle, from the first nascent product vision through specifying and implementing features to cutting features and triaging bugs to product release and ongoing maintenance. A great tester helps the rest of the product team understand the customer as well as they do.
Is a specializing generalist
A great tester is completely familiar with every detail of their feature. A great tester also understands how their feature fits into and affects the entire product. A great tester is willing to change or even cut their feature in order to make the product as a who





