Having been in the Software Testing industry for about 10 years now, I have had a good opportunity to witness first-hand the movement of the industry in this relatively short time span.
When I started, Software Testing was just the beginning to make its importance known and have just recently upgraded from a ‘should do’ to a ‘must-do’, regardless of what the software development lifecycle said. Software Testing, in the past, never had a big follower-ship due to the cost incurred.
In order to perform testing activities – people had to be hired and trained, schedules had to be extended to include testing time, machines and software had to be purchased and maintained – and maybe, after incurring all this cost, just maybe the software will work better and the customers will be happy.
Just how much does a firm need to spend to maintain the ‘Cost of Quality’, and at what point does this cost break-even and we start seeing the benefits?
And all this stigma surrounding the notion of ‘settling’ for a Software Testing position rather than aiming for it simply because ‘you’re testing the software because you can’t write code’. I have to admit, this may be true in many cases.
Software engineers who graduate with first-class degrees come into the working environment with very little to no programming skills and choose the Software Testing line. These testers then go on to become comfortable in their space and do not thrive to learn and improve. They believe what they know and have done until now is enough. They get by. They become complacent.
While the testers were not looking, the consumer marketplace kept evolving – people’s attention span became shorter, the need for faster deployments became greater, the rapid change in technology became tough to keep tabs on. The industry demanded more be done with less. The concepts of Agile Testing became a buzz. I admit that I wanted to jump on the agile bandwagon too.
When I was hired to start up a test department as I progressed along in my career, I had great ideas of implementing agile test methodologies, lean processes and rapid test turnarounds with the lowest possible post-release defect percentage. I was determined to keep the team size small, because we were going to automate everything, and we were going to test products in production environments!
As we got into the groove of things, we also got into the boring and deadly rut of Manual Testing. Getting into such a situation is easy because it requires no effort and no brainpower. But realizing it, and wanting to get out of it is not at all easy. The trick is to not get into such a rut in the first place.
Table of Contents:
List Of Top 5 Things A Tester Must Have, To Excel
#1) Continuous Improvement
Software testers must be constantly learning. The world of technology is not stagnant. It changes in the blink of an eye. Today, we’re talking about transporting people from Britain to Australia in less than three hours via jet planes that fly in space!
I am not saying that everyone should go out now and start learning aviation science. What I’m saying is that testers should not sit in their comfort zones and defend their lack of capabilities by providing the world-famous defense motion of ‘I am only testing this’.
Among many, one of the most important things a tester should learn is the constant growth of the product domain. Common misconception testers have is that product knowledge equals domain knowledge. This is completely wrong.
Knowing the product is of course very important, but having domain knowledge is vital. Not knowing the domain in which the system under test comes from is not only irresponsible but also dangerous.
#2) Programming Skills
Software testers should know the programming basics. A tester who can’t program, at least basic programs, can’t be as effective a software tester.
I remember in the company I first worked at, there was a rule to the effect of – to be able to become a tester, one must complete a development rotation first. What this achieved was that testers could relate and imagine the code structure when testing, thus providing great value to the developers and system engineers during the testing phase.
This is when a test team truly provides value-added services to the product they are testing.
#3) Mind Of Innovation
Testers must constantly think about how they can do two things, and do them well:
- vary the testing scenarios and
- improve their testing methods.
Armed with these two skills, varying the testing scenario now just becomes a matter of strategizing. Implementing it is not a problem anymore. This frees the tester to concentrate on Test Strategies, rather than the details of testing. They stop ‘sweating the small stuff’, for the lack of better words. Many software testing tools and programs are results of such forward-thinking.
#4) Communicate
In my experience, testers often feel that they are the “back office” people, therefore do not need to speak as much as the front office people. This may be true in some circumstances, but does not in any way mean that a tester needs to communicate less. Talking and communicating are two very different things, in almost any context.
A tester must be able to communicate clearly, accurately and demonstrate a high capacity of comprehension. Communication skill here includes activities such as reading and understanding specifications, translating those into structured test cases, reporting bugs and writing clear and concise reports to management. It does not stop there.
When in meetings, the tester must be able to rationalize the discussion and convey their findings in a logical and unambiguous method. In short, a software tester must have exceptional spoken and written skills in order to excel in the industry.
#5) Accountability
This is a word that a lot of the software testers I have worked with in the past may not be very comfortable with. I interpret this term in two different ways:
a) Accountability to the product you are testing: Many testers come into the office in the morning, work on their tasks and then leave the office in the evenings. As long as their tasks for the day are done, they pack up and leave. Sounds reasonable? It does, and I have read about and seen so many people actually thrive to achieve that sort of routine in the workplace.
However, this is not the point I want to make (another post for another day, perhaps). My point is, often enough testers do not see where their product fits in the big picture.
How does it affect the economy and market, businesses and business movement, consumers and end-users, etc? If only testers can study this and realize the contributions they are making, the work that they do will mean so much more and they will work so much better due to the sense of ownership they have cultivated.
b) Accountability to the errors or mistakes that you have made: People commonly often think of testers as the people who catch other people’s mistakes. And testers love to believe this as well. However, testers (like the rest of the human population) also make mistakes. Owning up to those mistakes make honest testers.
I often say that the testers who admit to their mistake and do not provide an unnecessary explanation that wastes other people’s time and effort, are dependable testers. We then can move away from the blame to focus on the solution. Finger-pointing or shifting the blame is dangerous too.
I have experienced this with testers who just find someone else to blame for their mistake and this costs a lot of unwanted circumstances and bad feelings. Just own up and move on.
The world is moving forward, the industry is moving forward, and testers must move forward too and not be left behind. “Learn, Improve, Innovate”.
About the Author: Ratha Jegatheson is a Quality Assurance Manager with Actix Malaysia (an Amdocs acquired company). She has been in the software industry for 14 years and in the software testing industry for 10 of those years.
She now leads a test department involved in testing, deployment, support, and maintenance of enterprise network management products in the telecommunications industry. She also provides her project and product management expertise for the projects she is involved in. She aspires to tackle product teams in the near future and diversify to other key business areas in her domain.
These are just my observations and opinions. Feel free to share your thoughts in comments below.
Thanks so much for this article Ratha:) A very inspiring one to me as a tester.
So much Informative and very nice article’s with clean explanation and definitely will recommend all my colleges & friends.
Thanks a ton.
Best Regards,
Anil
As a Tester I would like like to say tester have to take an initiative regarding the testing of any product on its requirements level, that will help the organization.
Very good post. Tester must learn the new technologies as soon as they can.
This is really a nice one to go through!!!
Testing space is changing continuously. What was working 10 years back is not valid these days.
Testers should always try to upgrade their skills and expertise.
Do you think learning programming knowledge is essential for testers?
I know many good examples of testers doing great at manual testing with little knowledge of programming.
Thanks for giving us a perfect MANTRA ‘Learn, Improve, Innovate’ !!
Very nicely written…… Keeps you gripped to the very end!!
Great article. I have been in the software testing career for 15 years now. I have learn a lot of things and the items such as communication and continous improvement are critical. There are many average testers but very few great ones. If you are passionate about quality, then you have a real opportunity to become a highly valuable resource to any IT organization.
Excellent points every tester should go thru and understand
Nice one… Especially I like “A common misconception testers have is that product knowledge equals domain knowledge.” .Now I understood that I should to improve my domain knowledge….
Nice article
Good Post. Tester must update his/her knowledge continuously
Nice , simple, to the point. Should connect to every tester.
Usefull article… ofcourse had something to keep in mind and follow.Thank you… 🙂
Thanks for giving such a great article.
Appreciate the feedback
Really useful, I am also working in Associate QA – Trainer. I used to learn some necessary thing from your article.
Excellent article. Really good points!!
Great article …… highly inspired
Thank you all for your positive comments
@Hariprasad – I agree that there are many testers that are doing very well in the manual testing field, with little to no programming knowledge. However, imagine how much better they would be if they knew a programming skill that would help them catch logical bugs and also create automation to do their job for them . This way, they would free up more of their time to perform scenario based and production testing, while the mundane requirements based testing is done by some automation scripts, and they don’t have to worry about that. Besides, learning a new skill is always good.
Thanks for the nice post, its motivating
–> They need to think from business perspective.
–> Continuous improvement requires in every aspect of life thats why we never saw big names like Mark Zuckerberg, Steve Jobs even after knowing so much never sat idle.
regards
gaurav K
Iam zero in software
Normal person with no much knowledge in computers, iam aged 52,
Can I learn software testing
My email id:bhim _lp@yahoo.com
Hi Ratha.
i want to switch career from bpo sector to testing ( i m learning manual testing concepts, Mysql workbench). i am a 2010 b.tech passout. what are my chances of getting a job in testing domain? what things (or skills) you think i need to crack interview.
Any advice???
Thanks for all the comments.
@amrit – This response may be a little late, but hopefully still helpful to you. Chances to become a tester is always great, especially now that the software testing sector is booming and the industry is coming around to understand the high return values of good in-house and production testing values. I would say, try practising bug detection as best you can. Manual testing is important, but the way forward is automated testing with end-to-end continuous integration.
Hi Ratha,
Been in this Industry close to 11 yrs, I found your article one of the best I have read for quite 1some time.
It just hits every tester at once when they go through this article to make them think what they have missed to do so far (Including Myself :))!!!
It almost makes every tester to just check once to refer two little words which is “Tester Tested”
Thanks for this great article and Keep going!
Regards,
Saran
Thanks for the comments.
@sakura – When a tester who has made a mistake, admits to it and does not give any excuses to escape from it is a tester who is trustworthy and reliable. Basically, own up to your mistakes, find the solution to the problem. Stop making excuses, long explanations and assigning blame. The problems can be resolved faster and more effectively this way.
Another great article. Thank to Ratha and Software testing help team.
Any sites which help us to keep updated abt new technologies in testing
Great article . Much needed for each tester . Especially what is being said that ” don’t get to confirm zone ” I believe 90% of us do that including Myself. Which is absolutely bad ..lot to learn ..Very inspiring .
nice
I don’t really understand this sentence “the testers who admit to their mistake and _do not_ provide _unnecessary explanation_ that wastes other people’s time and effort, are dependable testers.”
What is that mean.
Great Article! Thanks
Very informative article for beginners….
awesome post. like this one “testers should not sit in their comfort zones and defend their lack of capabilities”
What a great article. I would agree that manual testers who has Programming background automatically more confident and got better chances to succeed in Software Testing.
Communication is so important this area
Great, thank a bundle.
That is a gr8 post and a relevant one under the current circumstances. Testers need to constantly shift focus, in line with emerging trends, and upgrade their skills. I also feel that testers should know at least 1 programming language decent enough to further their career.
Good Article! Lot to learn and Innovate
very nice article.
good suggestions for the testers like me who have started their career in testing, but the thing is i from non IT background and still interested in testing as u mentioned in your above conversation that programming skills are required but i am bad in programming any suggestions pl.
Good post. tester learning new technologies but every company requirement only for experience no requirement learned technologies as fresher.
“learn improve innovate” is the way to success