What Should I Automate?

I get this question a lot: a tester who has just learned to program, or who has just learned about a new framework or tool set asks “Now that I’ve learned this, what should I automate?”

Some people (mostly men, so it seems) go into hardware stores and see some fancy tool like a compound mitre saw.

Image:  Compound Mitre Saw

Unable to resist temptation, they imagine themselves building… something. So they buy the tool. Then they take it home, take it out of the box, look at it and wonder, “Hmmm… what can I use a compound mitre saw for?”

It’s good to have a compound mitre saw available when you need one, of course. But if you simply charge ahead and start cutting stuff up without a purpose because you can, you’ll end up with a bunch of wood scraps and sawdust everywhere, and maybe with your spouse asking you what happened to the kitchen table.

When you’ve got a new tool in your toolbox, remember The Lesson of The Compound Mitre Saw. Instead of asking “What can I automate?”, start testing your product. As you do so, keep a question in the back of your mind: could some tool—a tool that I can make myself!—help me to get this part of the job done?

Ask yourself if a tool that you could create would help to enable, extend, enhance, accelerate, intensify, amplify, clarify what you’re doing—at a reasonable cost. If the answer is No because it looks too big or too hard, resist the temptation until you’ve found something that feels more tractable. When the answer is Yes, you’ll know what to automate. Creating little tools, over time, will give you the experience you need to take on the bigger things.

3 replies to “What Should I Automate?”

  1. In case you cannot resist the temptation of using a tool, you should at least abandon the illusion that this tool will tell you about meaningful things to automate. 😉


Leave a Comment