developer testing vs. tester testing

A developer testing will never be as good as a tester testing. I know that developers can be great testers. And maybe testers can be great developers too. But developers testing the same features they develop will never be as thorough as a tester testing features he knows nothing about. A tester knows how to ‘break’ software.

That’s why I believe that features should be tested by at least one person, other than the developer, before they reach the client. Developers assuming the ‘tester’ role can be really good at finding bugs. But they must have no mercy. They have to keep in mind that ’successful’ testing finds bugs. And if they do, I’ll be happy.

The main difference between each person testing is that the tester (who did not build the feature/project) will have no mercy. The tester won’t care for what is inside the code. The tester will know the spec, will set up the environment and will test away. It will definitely find bugs, it will try many ways to make the system crash. The testing will be creative (it must be creative) and it will be successful once it reports many bugs.

The developer, as much he tries, will have mercy. After all, it is his production, and he will assume things that the tester won’t. The developer will assume that people will be nice. That the user won’t ever do the things that the tester imagines. And there is where the error lays. The predisposition of the developer and the tester are different and that is what makes me prefer tester testing over developer testing.

This entry was posted in programming and tagged , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

2 Comments

  1. Posted December 1, 2009 at 10:06 am | Permalink

    Pretty awesome article. Short as Effective. I totally agree with you, I would add it’s essencial in a project to focus forces in each other’s roles, and there is where the developers must rely on tester to do what they can do best, seek and break down system features.
    Quality assurance must never be underestimated if we want avoid our clients rejections ;) .

  2. Posted December 2, 2009 at 1:59 pm | Permalink

    Thanks!

    A good testing phase is always necessary in order to engineer high-quality solutions and avoid client complaints.

    Also, a clearly define set of features is necessary for testing to know what is expected. These features should be reviewed, understood and approved by the client.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>