Don’t write your own tests?

Don’t write your own tests. That is what they say. They refers to professional (software) tester and software testing boards.

I don’t buy it.

But let’s not follow along blindly to what others say. I want to get to the root of the argument and then decide from there what might be best.

I will start with the pros of dividing between testers and developers.

  • Impartialness to the code
  • A fresh set of eyes / a new perspective
  • No idea of how a feature might be implemented (and what consequences that has)
  • A good tester is very analytical and follows procedures to test
  • Testing can be done while other things are being developed
  • Good working knowledge of test tools and test techniques (because it’s their job)
  • Pride in their work with a desire to find defects
  • Less confirmation bias (Developers assumes their code will work and tests might not be necessary.)
  • Effectiveness in finding defects tends to be higher (according to statistical reports and based on the points above)

Here is a list of cons for seperating testers and developers:

  • It’s much more expensive.
  • It takes more time.
  • Testers need to learn about the subject they are testing.
  • People need great communication skills. There is a lot of communication needed that is done in a way that no one is offended.
  • People might not be able to understand the other person’s point of view.
  • Testers might want to do too much according to protocol.
  • Testers need to be really experienced in their craft to make it worthwhile.
  • Developers miss the benefits of TDD, especially the design aspect that increases code quality.
  • Developers might miss the safety that tests written earlier might give them when trying things out.

I might have missed a point here or there. Please feel free to send in ideas on what I could add to either list.

Tomorrow you’ll get my point of view on this.

Similar Posts:

Leave a Reply