Thursday, January 28, 2010

How Testing Should Be!

I came across the following post by Sam Danes which I think is a great summary of how testing should be.

"I think the next level in test automation is to combine logically with a test engineer's skill set. The traditional "I don't code" testers are becoming less and less needed as the bulk of a testing team.

Automation moves hand in hand with proper white box testing, building stubs, harnesses, emulators that are capable of testing each component in a system in isolation are a near required component of white box testing.

Testing needs to take the step it always should have in the first place where the bulk of your testing team are actually capable of building the product they are testing. You will find far more defects far earlier in the development process by practicing proper white box testing and building good performance tools than you ever will with traditional black box and UI testing.

If you look at most traditional software house testers, even though the may be highly skilled at black box testing, they are mostly not capable of writing their own applications or understanding the full SDLC. In essence testing has always been looked down upon as a "less skilled" discipline than software development. In essence if you had a heirarchy of engineers by skill alone most places would put developers above testers in level of and needs of skills.

If you look towards software companies like Microsoft or Google, testing is actually the opposite. It is harder and more complex in many ways to be a tester (most often refered as something like a Software Engineer in Test) than it is to be a developer. To be a tester you need to be able to do all the things a good developer can do PLUS be able to understand and conduct testing.

You can in fact accomplish a lot with the traditional mostly black box test teams but if testing -- and by proxy automation -- are to take the next logical step test engineers in general need to evolve along with the tools they use.

A fully functioning, deeply technical test team, capable of everything from sitting in on code reviews, to true white box testing, to writing and maintaining the myriad of tools and testing applications in a modern organization on top of understanding and implementing good test practices can bring tremendous added value to the overal SDLC."

No comments:

Post a Comment