Software Testing: Essential Qualities

Software Testing: Essential Qualities

With all the noise around new technologies like generative AI, corporate situations like massive layoffs, a bunch of people in the development community claiming that automated checking during development is sufficient (and testing post-development is not important), there could be some confusions in the minds of the testing community (and the newly graduating students who are looking to get into the testing field) if software testing is anymore relevant. In this blog, let’s look at the essential qualities for entry into software testing, and the reasons why software testing is very relevant in these changing times.

You might be surprised that I am not looking at the testing tools and frameworks at all for a couple of reasons. One, they can be learnt, and two, there is no dearth of tools, and prioritizing one over the other is an endless game and probably not worth it. If you think a tool or two are valuable, just learn them and move on.

Let’s look at the essential qualities for entry into software testing. To me, the most important are:

  • Attention to detail
  • Big picture thinking
  • Curiosity to learn

I have talked about these three in my YouTube video. These three qualities shape a great tester. While attention to detail is an entirely different characteristic than big picture thinking (in fact diametrically opposite), they complement each other very well and both are important. As I wrote yesterday, continuous learning is a must in software testing for many reasons, and for this, one got to inculcate curiosity to learn. If you successfully build these three characteristics in yourself, you are in the path of becoming a great tester. There are some who advocate critical thinking as a characteristic, but that comes as a by-product of these three and can be added to your qualities later on.

Now let’s look at the reasons why software testing is still relevant.

As with all automation, the capabilities of automated checks, and even generating test strategies, test plans, and test cases with generative AI are limited. Testing is not following a sequence of scripted (human or otherwise) checks. Testing is exploring and based on context. So, we need human oversight always in testing. Automation and generative AI can indeed help in many aspects of reducing the time to accomplish repetitive or mundane work, but as testers, we always need to be there to validate and verify if the artifacts generated by generative AI or the indications shown by automated checks are correct, and to draw conclusions on whether the software ‘passes’ an hypothesis, and to orient further tests based on context.

More so, with the important pillars like performance, security, and usability. You might have observed that there are so many tools available in each of these areas but human oversight is terribly important to say if the software is doing the right thing!

And hence, organisations need to realize the importance of having human testers to validate and verify what the machines are doing. If this makes sense, they would not be firing the testers!

Hope this blog provided you a good context on the essential qualities of a software tester and the reasons on software testing is very relevant in the interesting times that we are living in. If your organisation is looking for someone who can mentor and guide testers in software testing and quality, or if you are looking for someone to come in improve quality based on the various pillars of software like performance and security, please feel free to reach out to me. Glad to help!

2 thoughts on “Software Testing: Essential Qualities”

  1. Pingback: Software Testing: Future-proofing Your Career - Venkat Ramakrishnan

  2. Pingback: Software Testing: How To Spot A Great Tester - Venkat Ramakrishnan

Leave a Comment

Your email address will not be published. Required fields are marked *