Would you hire a carpenter who doesn’t know how to use his hammer? Strangely enough, this is more or less what a lot of companies do when they hire a tester! That is to say, they hardly check whether or not the tester knows how to use his ‘hammer’ or his ‘screwdriver’.
To explain my point, let’s first examine what the tester’s hammer and screwdriver are, or what his tools– in general – are and what techniques he has available to use them properly. I’ll focus on test engineering, so the tools can roughly be divided in test specification tools and test execution tools. My point specifically bears on test specification. A carpenter knows when to use a hammer (for a nail) or a screwdriver (for a screw). For a tester this means he knows when to apply which coverage .
Let’s take the handling of an insurance claim as example. A customer enters the claim and the insurance company either handles it manually or fully automated (Straight Through Processing, STP). So, how many test cases do you need to test this, 2? One test case for the left path and one for the right path? If all you would like to test is the functionality per path, than the answer is ‘yes’.
If you would also like to test if the choice for left or right is correct, then it depends! If that choice depends on more than one condition, then 2 test cases will not be sufficient. From the decision table depicted here follows that STP is not a valid option whenever a client has previously entered 3 claims (irrespective of the total amount), OR whenever the sum total of all claims exceed 10.000 euro (irrespective of the number of claims) Then the claim will be handled manually. Only when both conditions are not met, STP may be applied. So to test the correct implementation of choice three test cases are required!
Apparently, the tester and the carpenter are very much alike! Depending on how the carpenter wants to put a shelf to the wall, with nails or with screws, he chooses a different technique and there for a different tool. A tester can also choose from different techniques (covering ‘paths’, covering ‘conditions’ and many more!) and utilizes different tools (in the case: the type of model that best describes required coverage) to do so.
So, the next time you’re hiring a tester, challenge his tool knowledge. Can he tell you the difference between his hammer and his screwdriver!?
Ben Visser is a highly experienced test manager and test consultant. In a career of over 15 years as a tester, he has fulfilled a wide range of test functions, from programmer of automated scripts, to test manager of a large international program. He has worked in traditional waterfall developments as a change manager responsible for test and acceptance environments, as well as model-based testing.
Based on this extensive experience, he co-authored Sogeti’s TMap NEXT® Business Driven Test Management (Nov 08) and more recently TPI® NEXT.
Philippe has worked with architecture related assignments since 1998 and as a educational facilitator since 2000.