Software testing is detective work 🕵️♀️ To be an effective tester, you need to think like a detective. Both need to rapidly make critical decisions based on limited information at hand. The disciplines involve investigation, finding evidence, and making inferences to arrive at a solution.
Unfortunately, we are not taught how to make good decisions under pressure in our education. In this two part series, we will discuss several ideas that can help you unleash your inner detective, and enable you to approach and solve problems more effectively.
Every Tester Is a Detective
Software testing and detective work have a lot in common. Below are some remarkable similarities in qualities required to be a good at both:
- Both criminal investigation and software testing are about solving complex problems. Detectives try to find out “Who committed the crime and why”? Testers are trying to answer the questions “Is the software of acceptable quality?” And “what are the risks that threaten the value of our product”?
- Detectives interrogate suspects, witnesses, or cops to understand more about the crime. Testers communicate with product managers, developers, and other testers to learn more about the product.
- Detectives may go through case files, photographs, postmortem reports, etc., to learn about the crime. Testers go through requirement document/user stories, designs, and architecture diagrams to understand the product.
- Detectives investigate the crime and create reports by collecting evidence to justify their claims. Testers explore the application and report bugs with evidence.