
Software testing is not just a process but it is a individual style in throughout software processes. There is a frequent question we all would have heard about that “Why can't developers themselves test their developed software?” This actually is like students writing public examinations and evaluating their own papers by themselves. Does this makes sense? Similarly will an application developed and tested by the same person make sense? Definitely not and let us see the reasons hidden behind the questions.
Tendencies towards their code
Generally the human tendency is to refuse to admit or explore their own mistakes or flaws to others. Similarly the code is being made ready with much difficulties and they will never think that their code will work incorrectly. The application developed is like their own child where they refuse to express their own child's mistakes. This is why a developer will never think or express the mistake that they have developed.
Developers are Optimistic
Developers develop in the way that the required functionality will work perfectly. They will be pretty good enough in picking a functionality and only focus on building that functionality efficiently whereas they are totally opposite from testers. Testers think creatively to break the software in various ways. A software tester will apply to test the functionality with positive test cases only when all the negative test cases run out of the pass status.
Regression Confusion
Developers focus on the functionality and develop in a single sprint and when the next sprint starts they become confused with the previous sprint and there occurs a bug with business logic or bug with the previously developed functionality. The requirements are being considered by a developer as only functionalities and if they misunderstand the requirements then surely there will be a failure in the application regardless of how well they test the application. Here the testers view the requirements in the business point of view so we can accomplish what is required.
Good fixers but poor breakers
The developers test only for the developed functionality or fixed code and if it works good then their testing is over whereas the tester's major goal is to break the application and some how they will find bugs and help the developers understand how that specific functionality should be.
Weak End-to-End perspective
Most developers have a single focus on a specific task or functionality that they choose for the day and they work with a single point or focus whereas if they test that single functionality with a single point of view then surely it will not fit them with the upcoming functionalities. Here the testers think broadly on the functionality along with the total application that will be on their mind whether it is the first sprint or following many sprints. This will help to complete the total application earlier and easier.
Less experience
The software tester gains a vast experience where a wide complex knowledge will be gained will common bugs and tough application logics. Due to immersion of testing a tester will easily find bugs and test them whereas the developers have a skill set only for fixing the broken application but not to break an application. Testing will be done only through the capabilities of a professional software tester since they have the capabilities of grasping fully and master the concepts. They also have a wide range of understanding of the tools and methodologies that requires some time to be understood by others.
This is why we have a testing team and I am not saying developers are bad testers but at the same time they are not as proficient and experienced as a true tester. Everyone has their own specialization and it is very important to excel with their own areas. Most of the developers think that we testers are intentionally breaking and finding bugs in their application but the fact is the application developed have bugs so we only determine the bugs. Other than this, a tester is always a developer's best friend.
30 Comments
Join the conversation! Your thoughts help the community grow.
Sign in to leave a comment.

Shaishav DesaiPosted Mar 5, 2024, 5:40 AM
People who have skills in other areas such as Finance, Business Administration, Machining, Electronics, etc., have their hands full doing what they have been trained to do. Similarly, a developer is an engineer who develops a product(coding) and we have to be mindful of the fact that the development/creation of a product is not the same as testing of a product. DEVELOPERS CAN'T TEST THEIR WORK. It is a conflict of interest and hence it only makes sense to give due importance to the QA process which is here to make sure the product behaves and works the way it is supposed to without throwing nasty surprises on users' faces!!
Prakash TripathiPosted Dec 31, 2015, 11:23 AM
Good perspective.
Pankaj Kumar ChoudharyPosted Aug 20, 2015, 12:54 AM
Nice content sir........
Shakti SaxenaPosted Aug 19, 2015, 6:23 AM
Quite knowledgeable :)
chandranr rajendranPosted Aug 18, 2015, 8:51 AM
Kalyankumar Ravichandran really superb. Can i get your mail id?
Vaikesh K PPosted Aug 17, 2015, 4:46 AM
Great :)
Yashwanth MuthineniPosted Aug 17, 2015, 1:26 AM
Nice share .
Shakti SaxenaPosted Aug 16, 2015, 1:24 PM
Worth reading
Joey S.CPosted Aug 16, 2015, 1:38 AM
well said.
Sam HobbsPosted Aug 12, 2015, 3:49 PM
It depends on the developer. Some developers are capable of developing quality code that has few bugs. I see no reason why a developer should not test their code, especially developers that produce code with more errors than others. For Quality Assurance purposes, it makes sense for a QA team to test software. I think it would be a mistake to tell a developer they cannot test their own code.
sayeed BAGBANPosted Aug 12, 2015, 4:56 AM
Nice One
Khan Abrar AhmedPosted Aug 11, 2015, 7:36 AM
Nice Artical.
Jacob RobinsonPosted Aug 4, 2015, 12:31 AM
Good One..
Kameshwar RoyPosted Jul 24, 2015, 6:34 AM
Very Good Article! Developers ignore most of the negative scenarios.
Santhakumar MunuswamyPosted Jul 23, 2015, 3:06 PM
Thanks for nice article:)
Rajeesh MenothPosted Jul 23, 2015, 2:02 AM
Good Kalyankumar Ravichandran
Gopi ChandPosted Jul 22, 2015, 3:15 PM
Nice
RakeshPosted Jul 22, 2015, 10:21 AM
it's a cold war.............!!
RakeshPosted Jul 22, 2015, 10:18 AM
Good one.
Mahesh ChandPosted Jul 22, 2015, 10:09 AM
BTW love the image :)
Mahesh ChandPosted Jul 22, 2015, 10:08 AM
Good once. Thanks. Peer code review has been successful recently bc of the reason that developers are optimistic. Developers should also think like a tester. Here is one of my blogs on the same: http://www.c-sharpcorner.com/Blogs/5266/
Gowtham KPosted Jul 22, 2015, 6:48 AM
Great one
Mozart HePosted Jul 22, 2015, 4:38 AM
Division of labor is the key to evolving.
Sibeesh VenuPosted Jul 22, 2015, 4:04 AM
Nice Share.