I have seen an inherent urge in software testers to immediately jump into the “how” of testing. They want to quickly start talking about:
- How can we automate tests?
- How can we use “ABC” tools to automate this application?
- How can we use “XYZ” management tool in this project?
- How we can integrate our tests with CI build?
- How can we directly raise bugs in Jira?
- How can we see testing traceability?
- How can we ensure the software meets the requirements?
- How can we <X Y Z>?
Some of these are important questions but these are not the questions that one should be thinking about at the start. Software testing is a social process and it’s important that before one dives into the technicalities of testing, it’s essential to start with the “why” of testing.
Knowing the “why” would help you to understand the purpose and the value of your testing efforts.
Rahul Parwal
Imagine you are planning a road trip to a new destination. Before you start driving, you would want to know why you are taking this trip.
Is it for leisure?
Is it for work?
Is it to visit family and friends?
Is it for something else?
Understanding the purpose of your trip will help you plan your route, pack the right items, and make necessary arrangements.
The same concept applies to testing. Understanding the “why” behind your testing efforts will guide you in making informed decisions, prioritizing your testing efforts, and achieving meaningful outcomes.
So, why is starting with “why” so crucial in software testing? Let’s see how it helps to find clarity on your purpose and mission:
- Helps Align Testing with Business Objectives: All software projects are essentially driven to fulfill some business objectives. Whether it’s to increase revenue, improve customer satisfaction, or comply with regulations, the software serves a specific purpose for the business. As a tester, it’s essential to understand the business objectives and align your testing efforts accordingly.
- Identifying & Mitigating Key Risks: A critical aspect of software testing is identifying and mitigating risks. If there are no risks, there is no need for testing. It’s essential to look out for the risks and concerns of your stakeholders. Risks can be anything that could impact the quality, performance, or security of the software. Ex: potential risks such as data breaches, transaction failures, or usability issues. Starting with “why” allows you to understand the potential risks associated with the software and prioritize your testing efforts accordingly.
- Explore Customer Desires: Ultimately, the success of any software depends on the end-user’s satisfaction. By starting with “why,” you can gain a deeper understanding of the end-users needs, expectations, and pain points, which can guide your testing efforts to improve the overall user experience.
- Clear Understanding of Problem Statement: Starting with “Why” initiates discussions and healthy communication among team members. This helps everyone develop a clear understanding of what problem are they trying to solve. As testers, this is crucial as unless your testing covers important use cases and core problem statements, most of your work could just end up as a wasted effort.
So, what to do whenever you approach a new project?
My suggestion: Seek Answers in this order: “Why” >> “What” >> “How”
First find answers to: “Why are we testing this in the first place?“
Once you get your answer to that and you feel convinced; it’s important to then focus on “What do we need to test?“. Here you would find answers about your test coverage. I 🧡SFDIPOT mnemonic by James Bach. Know more here: “How I use SFDIPOT to learn and explore about applications” by Sharon O’Boyle | What is heuristics – YouTube
After you know the “Why” and “What”, Now is the time to find your answers to “How will we test this?“
Whenever testing, don’t just jump on the “How”; Start with “Why”
Rahul Parwal
Happy Testing!
If you liked this article, you can check out this popular post from my blog hits: