I used to say that when I’m not testing I am gardening.
As a Tester a new project is always exciting I will have new code to test, run, re-run and turn upside down to find the bugs before the users do.
As a Gardener when a new season starts it’s always exciting. What plants will I grow this year? Which are the best spaces in the garden? Will this plant adapt to the weather conditions?
As a Tester I start a task by reading the feature’s requirements. Then I study the target market, trying to understand the user’s expectations and habits. It is important to know on what kind of operating systems it will run and which database servers it should work on. Depending on whether it’s a web application or not I will test it in a different way. Normally I don’t have plenty of time to test so I have to plan it carefully.
As a Gardener I like to plant vegetables, particularly tomatoes. Every year I have to decide what to plant. There are thousands of species on earth. The first step is to make a list. After the list is done I need to look at the garden and select the places where I can plant. Depending on the species I will have to plant them in places with more or less daily hours of sun light. If they grow a lot I have to put them in places where they are free to grow and put the short ones under a tree, for instance. I don’t have lots of space so I have to plan it carefully.
As a Tester I need to define a test strategy. I will have to think about what to automate and what tools I might need. Will I write scripted tests or just do pure exploratory testing? Will I do both? If I make the right decisions I have good chances of getting a good production release in return.
As a Gardener I need to find a place for the container in which I planted my seeds. This should be a place protected from rain, freezing nights and with a suitable temperature to make them germinate. They need to be watered frequently. When they develop their first true leaves they need to be transplanted to a larger container. After two or three weeks I will have to transplant them again to the final location in the garden. If I make the right decisions I have a good chance of having a good harvest.
As a Tester I like to explore all the cases where I can find problems. Sometimes I need to give attention to what seems to be a detail to prevent a problem in the future. I describe all the problems I find so that programmers can fix them.
As a Gardener every day I take a look at my plants to check if they are growing well. When I find a problem that I can’t solve I describe it to an agriculture technician so that they can help me.
As a Tester I like to report on all of the tests I created. In these reports I can describe the steps, input values and results. Sometimes a video or some pictures are attached to the report.
As a Gardener I like to take some pictures of my plants growing. I also report all important dates, like germination day, the first bloom and the first fruit.
As a Tester I execute some hard or boring tasks, like writing detailed reports or writing scripted tests. I also have to repeat test executions and when this happens I automate these tests.
As a Gardener I execute some hard or boring tasks, like weeding every week or watering every day. To avoid watering manually every day I may install an automatic watering system.
As a Tester I enjoy it when the problems I find are fixed and the application works well. When the application gets to this point I enjoy the feeling of it getting harder and harder to find a problem. I feel proud of my work.
As a Gardener I enjoy looking at my plant and see it blooming and healthy. I love to lunch in the garden on a sunny day and enjoy a tomato salad – the tomatoes I planted and cared for all these weeks before. I feel proud of my work.
I used to say that when I’m not testing I am gardening. Now I can say that when I’m gardening I am testing.
How many of you are Testers and also Gardeners?
This post was originally published in “The Testing Planet” a Testing magazine from Software Testing Club, in July 2011