Is it true that developers can't be good testers?

Testing is the process of evaluating a software application, and testers are professionals who participate in this process. They solve many tasks: write test cases, report bugs, set up the environment, work with requirements, and so on. According to research, the software testing market has already exceeded 40 billion US dollars and is expected to grow by another 7% by 2027. Testers must know programming languages, test management tools, test automation tools, have project management skills, and many other skills.

Now let's discuss why testers are needed? Why can't developers test their code themselves? The answer to this question is similar to why students don't check and evaluate their exam answers themselves. In this case, the question “why” does not arise, because students will not be able to evaluate their mistakes themselves. In the same way, developers cannot find errors and miscalculations that they may have made. In this article, we will discuss this topic in more detail.

Reasons Why Developers Can't Be Good Testers

1. Lack of extensive experience working with typical bugs

This is one of the most important reasons. An experienced tester has a clear idea of ​​the typical bugs that can cause problems in the future and that need to be checked in the first place. If a developer does not have such experience, he will simply make “random shots” that can prevent the entire application from working. Thus, the lack of experience directly in testing is the first reason why developers cannot be good testers.

2. Difference in approaches

Developers work from a perspective creations applications. They usually analyze the problem and break it down into smaller parts to find the best solution. While testers work from the perspective of something break or find flaws in the application. This means that testers must think outside the box and test all possible scenarios, putting themselves in the client's shoes. Their actions are aimed at ensuring that the application does not break as soon as it starts working.

3. Maternal attachment to one's code

As normal people, we feel an attachment to everything we create. This can be better understood with a practical example: from your mother’s point of view, you are the best. If you do something wrong, she will start referring to, for example, the bad influence of your friends, because in her eyes you are perfect. It may seem silly, but developers feel an attachment to their code, and this makes it difficult to find flaws or bugs.

4. Different people will perform tests differently

This is another reason why we need independent testers to test the application. The developer can follow the same pattern:

  • Enter name

  • Enter your email address

  • Enter your mailing address

  • Add phone number

  • Check and click OK

A similar approach was used when creating the application. But the tester can act non-standard (as a real user), for example:

  • Skip name

  • Add email address to the address field

  • Add address to postcode field

  • Leave any field blank

  • And then click the OK button

A tester will try different combinations to check whether the application works as expected or not. Another tester will perform tests differently and make sure that the application is safe, bug-free and ready for release.

5. Focus on positive scenarios

Developers usually work on implementation and rarely find bugs in existing code. They have a positive attitude towards code and their inability to find bugs means they cannot be good testers; while testers work on checking the code in negative test cases and on re-checking. Testers think about what can go wrong. Developers are the exact opposite of testers.

So, we tried to explain the reasons why developers are not good testers by default. But there is no skill that we cannot learn. In the next section, we will talk about how developers can contribute to the testing process.

How do developers contribute to the testing process?

To reduce the number of errors, developers should adhere to certain practices in their work.

1. Take testing seriously

Agile approach means that both developers and testers test the code. This will ensure high code quality and reliability of the application. Start taking testing seriously and spend some time learning the necessary skills.

2. Work on your weak points

As a developer, you treat your code differently. Try to analyze your weak points and start working on them – this will help you do your job much better. If necessary, ask testers for help.

3. Constantly expand your knowledge base

The best way to stay in the IT industry is to constantly improve your knowledge. Your code is like your child, so you should take care of it. Try to expand your knowledge in the field of testing to minimize the number of bugs and increase productivity.

So, I hope I have made it clear why developers are not good testers by default and how they can contribute to the testing process. After all, developers and testers are two different sides of the coin with different skills.

In conclusion, we invite all novice testers to open lessons that will be held in Otus as part of the online course “QA Engineer. Basic“:

Similar Posts

Leave a Reply

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