Recognize this? It’s that time of the month again: time to regression test the monthly and quarterly batch jobs. No one has touched the code, but somehow there’s always some inadvertent error that has found its way into the ‘not changed’ code. So, here you go again: setting up the regression test environment, preparing and loading test data, checking interfaces to back-end systems… Two days of painstaking hard work requiring undivided attention, to prepare the test run that takes ‘only’ 4 hours – and then another 2 to 3 days to verify the results.
Not the nicest week of the month THEN STOP DOING IT! STOP WORKING SO HARD! You’re an IT professional, behave like one.
Most test professionals have a good work ethics: we’re not afraid of hard work. “Let’s put our shoulders under it and get the (test) job done!”. It’s part of our upbringing, being used to starting testing on unfinished, sometimes poorly developed systems on downscaled test infrastructure under severe time constraints. But this attitude has backfired and we’d better take a step back and look at what we’re doing manually, especially in regression testing, that can be automated. Every month you’re doing the same things, so if you can bring an activity back from 2 to 3 hours to 15 minutes, the business case is easily made. Take a day to write a script and your ROI breakeven point is reached in 4 months. Take two days and you still reach breakeven within the year. And another big advantage of scripts is that they are 100% predictable in their actions – this cannot be said of us humans (yes, testers are only human).
So, if the math is that simple, why don’t we already automate the majority of regression testing? We’re working too hard and thinking too little. It is an attitude issue. Okay, not every tester knows how to write scripts, but every tester knows that when he’s doing something for the 30th or 40th time that there should be a better way … Testers of the world, I call on you: unite and be lazy! Automate testing as much as possible, banish manual test activities where and when you can!
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.