What makes you think you are good at testing?
The question still bangs in my ears whenever it comes to an interview. This was the question I was asked at the beginning of my career as a software tester. The interviewer asked some aptitude questions as usual and suddenly he threw this question to me. I was almost speechless. Most of the time, we think we are good at something because we are doing it or maybe we presume we are good at it.
After spending almost a decade in the industry, when I look back I can understand the importance of the question and therefore today I am going to present you a list of points I have jotted to make myself feel that I was/am good at testing.
Let’s take a look. On a side note, you are invited to add your point to the list and we will accept it with open arms.
What You Will Learn:
- 10 Qualities that Can Make You a Good Tester:
- #1. You understand priorities:
- #2. You ask questions:
- #3. You can create numbers of ideas:
- #4. You can analyze data:
- #5. You can report negative things in a positive way:
- #6. You are good at reporting:
- #7. You are flexible to support whenever it’s required:
- #8. You are able co-relate real time scenarios to software testing:
- #9. You are a constant learner:
- #10. You can wear end user’s shoes:
10 Qualities that Can Make You a Good Tester:
So, here you go. Please prepend the condition “you are good at testing when” to each point and read through:
#1. You understand priorities:
Software tester unknowingly becomes good time manager as the first thing he needs to understand is a priority. Most of the time, you are given a module/functionality to test and timeline (which is always tight) and you need to give output. These regular challenges make you understand how to prioritize the things.
As a tester, you need to understand what should be tested and what should be given less priority, what should be automated and what should be tested manually, which task should be taken up first and what can be done at last moment. Once you are master of defining priorities, software testing would be really easy. But…….but my friend, understanding priority only comes with experience and so patience and an alert eye are the most helpful weapons.
#2. You ask questions:
Asking questions is the most important part of software testing. If you fail at it, you are going to lose an important bunch of information.
Questions can be asked:
- To understand requirement
- To understand changes done
- To understand how requirement has been implemented
- To understand how the bug fixed
- To understand bug fix effects
- To understand the product from other perspectives like development, business etc.
Can be beneficial to understand the overall picture and to define the coverage.
#3. You can create numbers of ideas:
As I have written in almost my all posts, software testing is about ideas. When you can generate numbers of ideas to test the product, you stand out of crowd as most of the time people feel self-satisfaction after writing ordinary functional and performance test cases.
As per me, a real tester’s job starts only after writing ordinary test cases. The more you think about how the product can be used in different ways, you will be able to generate ideas to test it and ultimately you will gain confidence in the product, customer satisfaction and lifelong experience.
So, be an idea generator if you want to be good at testing.
#4. You can analyze data:
Being a tester, you are not expected to do testing only. You need to understand the data collected from testing and need to analyze them for the particular behaviour of application or product. Most of the time, when I hear about a non-reproducible bug, I silently smile. There is no bug that is non-reproducible. If it occurred once that means it’s going to pop out for the second time. But to reach out to the root cause, you need to analyze the test environment, the test data, the interruptions etc.
Also, as we all know, when it comes to automation testing, most of the time it’s about analyzing test results because creating scripts and executing them for numerous time is not a big task but analyzing the data generated after execution of those scripts, is the most important part.
#5. You can report negative things in a positive way:
yes, you read it correctly. A tester needs to learn tactics to deal with everyone around and needs to be good at communication. No one feels good when he/she is being told that whatever they did was completely or partially wrong. But it makes a whole lot of difference in reaction when you suggest doing something or rectifying something with better ideas and without an egoistic voice.
Also details are important to provide details about what negative you saw and how it can affect the product/application overall.
No one would deny rectifying it. :)
#6. You are good at reporting:
For the whole day, you worked and worked and executed numbers of test cases and marked them as pass/fail in test management tool. What would be your status at the end of the day? No one would be interested in knowing how many numbers of test cases you executed. People want a short and sweet description about your whole day task.
So now onwards, write your status report to the client as – what you did (at max 3 sentences), what you found (with bug numbers) and what you will do next.
#7. You are flexible to support whenever it’s required:
The duty of software tester does not end after reporting a bug. If the developer is not able to reproduce the bug, you are expected to support to reproduce it because then only the developer will be able to fix it.
Also, tight timelines for software testing makes many testers ignorant for quality. The right approach should be proper planning and an extra effort to cover whatever is required.
#8. You are able co-relate real time scenarios to software testing:
When you are able to co-relate testing with real life, it’s easy. Habituate yourself to think or constantly create test cases about how to test a train, how to test a vegetable, how to test a monument and see how it helps in near future. It will help your mind to constantly generate ideas and relate testing with practical things.
#9. You are a constant learner:
Software testing is challenging because you need to learn new things constantly. It’s not about gaining the expertise of specific scripting language; it’s about keeping up with the latest technology, about learning automation tools, about learning to create ideas, about learning from experience and ultimately about constantly thriving.
#10. You can wear end user’s shoes:
You are a good tester only when you can understand your customer. The customer is GOD and you need to understand his/her needs. If the product does not satisfy customer needs, no matter how useful it is, it is not going to work. And it is a tester’s responsibility to understand the customer.
With this, I am ending this article with a hope that I could cover most of the points, which are making me a good tester. What about you?
About the author:This post is written by STH team member Bhumika Mehta, a project lead with 7 years of experience.