16 Characteristics of a Great Software Tester

This is a guest post by Santhosh Kumar Ponnusamy. If you want to post your article here check out our guest posting guidelines on this page.

What Makes a Good Software Tester to a Great Software Tester?

Testers are the backbone of all IT companies because they are the persons who can give the quality outcome; they are one of the most responsible persons in releasing the project.

Be Proud to be a tester. You are the person who reduces the work in many fields, you are the one who often release projects without defects, and you are the person whom people and company believe in more. Finally you are the person who ensures the peace of mind for end users. Without you, it’s almost difficult to complete the project successfully.

Good Software Tester

As a tester you should continuously strive to become better and better.

To be a great software tester, you need to develop following 16 characteristics within you:

1. Be Skeptical Don’t believe that the build given by developers is bug free or quality outcome. Question everything. Accept the build only if you test and find it defect free. Don’t believe anyone whatever be the designation they hold, just apply your knowledge and try to find errors. You need to follow this till the last testing cycle.

2. Don’t Compromise on Quality Don’t compromise after certain testing stages. There is no limit for testing until you produce a quality product.  Quality is the word made by software testers to achieve more effective testing. Compromising at any level leads to defective product, so don’t do that at any situation.

3.Ensure End User Satisfaction Always think what can make end user happy. How they can use the product with ease. Don’t stop by testing the standard requirements. End user can be happy only when you provide an error free product.

4. Think from Users Perspective Every product is developed for customers. Customers may or may not be technical persons. If you don’t consider the scenarios from their perspective you will miss many important bugs. So put yourself in their shoes. Know your end users first. Their age, education even the location can matter most while using the product. Make sure to prepare your test scenarios and test data accordingly. After all project is said to be successful only if end user is able to use the application successfully.

5. Prioritize Tests First identify important tests and then prioritize execution based on test importance. Never ever execute test cases sequentially without deciding priority. This will ensure all your important test cases get executed early and you won’t cut down on these at the last stage of release cycle due to time pressure. Also consider the defect history while estimating test efforts. In most cases defect count at the beginning is more and goes on reducing at the end of the test cycle.

6. Never Promise 100% Coverage Saying 100% coverage on paper is easy but practically it is impossible. So never promise to anyone including clients about total test coverage. In business there is a philosophy – Under promise and over deliver.” So don’t goal for 100% coverage but focus on quality of your tests.

7. Be Open to Suggestions Listen to everyone even though you are an authority on the project having in depth project knowledge. There is always scope for improvements and getting suggestions from fellow software testers is a good idea. Everyone’s feedback to improve the quality of the project would certainly help to release a bug free software.


8. Start Early Don’t wait until you get your first build for testing. Start analyzing requirements, preparing test cases, test plan and test strategy documents in early design phase. Starting early to test helps to visualize complete project scope and hence planning can be done accordingly. Most of the defects can be detected in early design and analysis phase saving huge time and money. Early requirement analysis will also help you to question the design decisions.

9. Identify and Manage Risks Risks are associated with every project. Risk management is a three step process. Risk identification, analysis and mitigation. Incorporate risk driven testing process. Priorities software testing based on risk evaluation.

10. Do Market Research Don’t think that your responsibility is just to validate software against the set of requirements. Be proactive, do your product market research and provide suggestions to improve it. This research will also help you understand your product and its market.

11. Develop Good Analyzing Skill This is must for requirement analysis but even further this could be helpful for understanding customer feedback while defining test strategy. Question everything around you. This will trigger the analysis process and it will help you resolve many complex problems.

12. Focus on Negative Side as Well Testers should have test to break attitude. Concentrating on only positive side will almost certainly create many security issues in your application. You should be hacker of your project to keep other hackers away from it. Negative testing is equally important. So cover a good chunk of your test cases based on negative scenarios.

13. Be a Good Judge of Your Product Judge usually thinks whether it is right or wrong. Judge listens to both the sides. Same is applicable for testing. As a software tester if you think something as right, try to prove it why it is not wrong and then only accept it. You must have valid reason for all your decisions.

14. Learn to Negotiate Testers have to negotiate with everyone in all stages of project life cycle. Especially negotiation with developers is more important. Developers can do anything to prove that their code is correct and the defect logged by testers is not valid. It requires great skills to convince developers about the defect and get it resolved. Though some software testers think this is not our task but explaining the true impact of any issue is very helpful for developers to quickly understand the overall scenario and its implications. This requires years of practice but once you learn to negotiate you will gain more respect.

15. Stop the Blame Game It’s common to blame others for any defects which are not caught in testing. This is even more common when the tester’s responsibilities are not defined concretely. But in any situation never blame anyone. If an error occurs, first try to resolve it rather than finding someone to blame. As a human everybody makes mistake, so try to avoid blaming others. Work as a team to build team spirit.

16. Finally, Be a Good Observer Observe things happening around you. Keep track of all major and minor things on your project. Observe the way of developing the code, types of testing and its objective. Observe and understand test progress and make necessary changes if it is off the track in terms of schedule or testing activities. This skill will essential help you to keep yourself updated and ready with course of action for any situation.

Try to implement above 16 steps in your day-to-day testing activities. Practicing these steps will make you to excel in testing filed. Remember testing is not only a challenging job but it is a creative job too. Love your job and you will become the leader in your filed!

About the Author: This is a guest article by Santhosh Kumar Ponnusamy. He has completed his post graduation in M.Sc (Software Engineering) and currently working as a Test Engineer with Coimbatore based CMMi Level 5 Nous Infosystems. 

If you find this article interesting and useful, then don’t forget to share this with your friends. You are welcome to add your comments/experience.

Recommended reading


#1 Jeanne Sandra

I’d like to add one more important characteristic i.e. ability to quickly adapt and learn.

#2 Rajesh

communication skills is also a important characteristic for a teet engr.

#3 sureshbabu

Please give some usefull insights, the above aspects everyone know that.

#4 Mohan

awesome article…

#5 jk.ganesh

thanks for ur help

#6 Usman Ashraf

Very good article and explain in very simple words. I will definitely share it with my colleagues.

#7 nisha

awesome post, I like this line ” Developers can do anything to prove that their code is correct” really developers do this to prove , tester doing something wrong…. their code is correct.
Thanks for sharing Santhosh Sir.

#8 Maira Stella da Silva

Awesome! For me, the most difficult, it’s to talk to developers. But today, they think that what we do it’s to provide a better program for our clients. So, we got the team spirit!

#9 Sumitra Mahajan

agree. Developers do anything to prove it’s not a defect. For them “It’s not a bug it’s functionality”, or “hey, it is there since the beginning, I haven’t touched that part.”..
All these comments are common in Dev QAs.. Learning to negotiate is a big skill any testers must poses over the career path.

#10 Olivier Rombaut

Take nothing for granted and ensure regression testing and system integration testing at the end of the testcycle is completed step by step

#11 Sandeep

Point No 10 is to implemented.
Involve in the requirement phase and be a proactive in the team.

#12 Ahmed AbdElmaksod

Thanks for your Great Topic,
It includes the Most Common and Preferred Characteristics needed for Testers,

But Note that, Some of them should be Mandatory :-)

> Caring on Deliver on Time ASAP
> Know and Read about New Techniques in Work
> Implement and apply the New Ideas (methodologies) in Work (to make the work environment more flexible, effective and not static)

#13 priyanka

very nice article. i like …..

#14 Mohamed ezzat

Thank you

#15 Anshu

This is something that almost every tester knows but seldom accepts or reads to one’s self. Thanks for sharing and reminding what we testers should be doing

#16 Lenin. MS

Great lessons!

Thanks to remember our responsibilities one more. Really Appreciation deserved work sir.
Many thanks…

#17 Testingwalk

Thanks for your help, This is one of the great article which i read here…thanks again!!!!

#18 Megha

Thanks for this article. Its very helpful.

#19 Tanya

I think if you work more then 3 years all this will come in your mind in any case.

Good to add an article about time management to make all this true in one day for one person.

#20 sabareeswari

Hai Snthosh very Nice Article .. Keep Doing the good Work…

#21 sumit

Thanks for this article. This will help
me for developing my techinques in testing.

#22 Salma

Thank you, this article is very useful

#23 NeilAdvani

Though I am a business man in California. I am highly obliged to you as I have special interest in Software testing. Great information to me and for all webmaster. Nice! Keep it up.

#24 Rahardian D J

Great article. As a Software Tester we need all of those characteristics

#25 Lakil

Very good article and explain in very simple words. I will definitely share it with my colleagues and team.

#26 mustaqim

It was a very good article. I am new in this field. SO it will help me a lot to conduct my works.

#27 anji

nice article

#28 Jumal

very good article. Anyone wanting to take Software Testing to another level can buy exam papers @ ISEB-sofwaretesting.weebly.com

#29 Anshul

Nice Article

#30 Pradeep

Good article. Thanks for sharing with us.

#31 Rani

Thanks a lot. its really good to read and hope it will be great in implementing too..

#32 Bala

Nice Article. Those who started their career in testing, Have to adapt the above 16.

#33 Priya

Awesome article santhosh :) This article might help people who are willing to pick testing as their career :)

#34 Sanjana

Good one

#35 Joseph

Great article!

#36 Rajeev.S.Harikar

Awesome article this really helps me alot…….once again thank you……..:)

#37 Raihan

These findings would be really helpful to be a good tester. Continue with other kind of nice observations.

#38 kannaki

Awesome article,its encourage me to do more.Thanks a lot.

#39 harish

Nice Article and very good point. This really help websters a lot. Good work and Thanks to Vijay :)


#40 jaya

tqu santosh this article gives more stuff to me ,i am waiting for u r next article.

#41 Upendar

Very nice artical, thanks for sharing with us…

#42 Manjunath

Very nice article.. thanks for proving this.

#43 mamatha

this article is helpful for beginners…”love your job”really meaningful..thank you..

#44 Ajantha

Great Effort Santhosh :-) Keep posting :-)

#45 davies

good stuff am just in software testing and i find it satisfying career wise

#46 Shaik

Thanks for the article!
Got to know many things sir…

Thanks once again!!!

#47 ram

Very nice article sir …thankyou so much

#48 Ramesh

I would like to add one more thing
It is not feeling regrets.
If an application we tested and verified show an error in client site we should not feel guilty
We should have the mental strength to accept the mistake and the ability to live in present moment

#49 nuka shrinivas rao

I have in the industry for more than 9 years, but i have seen some of the best testers are those who have the willingness to test.
So for me “Willingness” is the most important thing a tester should have. He should have willingness and zeal to find uncovered defects. Have seen people doing testing and just completing the task without having the aim to uncover most of the defects.

#50 viji kumar.c

its good.

#51 viji kumar.c

its good thank you sir…..

#52 bhawaani

Nice Article

#53 Rajeev Reddy

Excellent Article

#54 Abhijeet

Hey its nice Article happy to read this one…..thanq

#55 Raja

Nice Info

#56 Raj

Best experienced information.

Leave a Comment