5 Things a Beginner Developer (and Tester) Should Know About Software Testing

Whole conference room went silent and after waiting for couple of minutes, I could not keep patience and had to repeat my question:

Who would like to join testing team?

We had 20 trainees on board and they were being trained on different aspects of software projects. Leads and managers from different departments like business analysis, development, testing, and sales held meetings with those trainees to provide the knowledge and to help them in understanding what and how actual software project looks like. As a test lead, I explained basic testing aspects and importance of testing life cycle to those new faces.

developer and tester

With excitement, when I dropped the question, I never thought of pin drop silence. No one was ready to join testing. I sighed sadly and picked up another track to educate this future generation of IT.

I tweaked my question to know the reasons behind declining software testing as a profession

Why don’t you want to join software testing?

Answers were interesting (and practical at some point)

  • Anyone can do testing but not development (good to know)
  • Testers are paid less (slightly true but not always)
  • It’s a thankless job (totally agree but that’s not the valid reason)
  • There is nothing to learn about it (Hooh……who said that?)
  • There is no reason to choose software testing as a career (the worst reason)

Why software testing exists?

Ok, so it was time to train those new people about why software testing exists and what should they know about it if they are going to join software development.

How I changed Their Mind?

Here I am just trying to brief out what we have discussed during that afternoon and how I was successful to change mind of at least 20 people, while clearing perception about software testing.

#1. Software testing is not waste of time:

What happens when you have guest at home and you hurriedly prepare lemonade for them and serve them? When the guests leave the glasses unfinished, you feel that something must have gone wrong and when you taste the lemonade, OMG……it felt stinky. You wish you would have spent only 10 seconds more and taste the lemonade before serving.

While being in hurry to deliver the project in a timeline, companies/management/anyone gets ready to compromise on the time for testing because the perception about software testing really takes long time than required is still alive in people’s mind. But isn’t the time taken for testing is worth compared to the customer’s call at midnight to let you know that he is going to cancel the next assignment as the current assignment delivered exhibited more than 5 critical bugs within first two hours of internal usage. Bang!!

#2. Software testing is mandatory:

Software testing is an unavoidable part of software development lifecycle. The way

  • Editors help in making the movie better
  • Proofreaders help in making a book better
  • Security guards help in making people’s lives peaceful and secure
  • Oil helps in running machinery faultlessly

Software testing helps software in being better. I don’t think I need to spend even single more word to explain it.

#3. Unit testing is a complete responsibility of developer:

When you develop something, you need to check it before asking someone else to check it. The way

  • The chef always tastes and smells his/her recipe before serving others

The developer is completely responsible to test his/her own code before sending it to testers. Testers are there to help you in improving quality of code and ultimately the product and not to find out the silliest mistakes you did while writing the code.

In addition to that, never assume that quality is the responsibility of testers only.

In today’s agile world, developers and testers are supposed to take combined responsibility of product quality. Developers are expected to do pair testing with tester and provide insight about what and why something can go wrong and encourage tester to generate testing ideas based upon your insights.

#4. Developers and testers are equal:

Any work/project is a combined effort of team and that means each and every person is equally important. If a developer thinks that he is doing best and should be given more importance because he is creating something from scratch, re-consideration of the thought is required. Yes, developer develops something from scratch but he is not able to complete the creation without help of tester.

Tester provides a user’s eye for the product. A well-trained and experienced tester can show the loopholes in the product, a developer can never think off. A tester brings in new ideas about how product should be, how it should look at particular instance, how it should work, how it can behave and how it can crash.

The way it is important to add salt to every recipe to make them eatable, testing is needed to make the product deliverable.

And therefore, developers and testers are equally important. They are the left and right hands of body called project.

#5. Tester should be involved from first day of project:

As a developer, you should never make that mistake to assume that there is no need for a tester to become aware about something like requirement analysis, logic applied while writing code, change requests by client, feedbacks by client etc.

Tester is a stack holder and should be involved from kick-off the project. Initial involvement of testing team gives them confidence, constant discussions nurtures an understanding between development and testing team, kind help boosts their spirit to do something better, demands for suggestions make them feel worth.

Conclusion:

Tester is not to test a module / product only, he is there to help in delivering best product, he is there to help by suggesting some proven ideas about users’ expectations, he is there to let you know that how frequently your beloved code gets crashed……and you, as a developer, really need it, aren’t you?

About the author: This awesome post is written by STH team member Bhumika Mehta. She is a project lead, carrying 7+ years of software testing experience. She is totally into testing and loves to test everything exists.

As usual, waiting for your feedback, opinion, and suggestions about the topic.

56 thoughts on “5 Things a Beginner Developer (and Tester) Should Know About Software Testing

  1. I started work as a Jr.Software Tester and I wants to know more about testing and tester position.
    One of the most favorite article i have ever read.

    Thanks

  2. Dear Sir/ Madam,
    I am Dinesh from Pune. I have done software testing course in oct 2015 and from last 3 month i am working as a software tester trainee for a small IT company .. Before going to my question i shortly introduce my previous experience I was running a small BPO from 2009 to 2015 I.e from last 6 years,
    My Education is
    1. Comp Engineering (Not Completed )
    2. Diploma in computer Engineering (65%) in 2004
    3. HSC in 2001
    Do you think that i have chance to have carrier in Sofware Testing

  3. Dear sir/mam
    It’s very useful article for me . i learn more from your words and get clarification . i just thinking start my carrier as software testing.
    you are motivated me thank you.

  4. Hi Bhumika,

    I am just getting into the QA Tester field, actually changing fields from social science to IT. So, your article is really very helpful. An excellent read in simple terms for someone like me from a non-IT background.

    Thank you again for sharing your innovative ideas and thoughts. I really appreciate it.

    Btw, are there any companies that you might know who would hire software tester trainees? Because I am quite nervous about the fact that after taking a course but having no job experience; how would I actually get my foot in the door.

    Thanks so much!

Leave a Comment