This train of though starts with Pete Walen posting an “overheard” tweet
OH: calling wine I made following a vintners instructions "my wine" is kind a like calling executing a script someone else wrote "My Test"
— Pete Walen (@PeteWalen) October 20, 2013
I don’t have any experience making wine but I have made beer a few times. The thing about beer making and testing is that there are innumerable variables. If you buy a kit or a set of ingredients based on a recipe, the best case scenario is that you come *close* to what the recipe author intended. There are so many things to consider. The mineral content of your water, the yeast you’ve managed to procure, the harvest conditions of your grain and hops, temperatures at various points during the process.
This immediately brought to mind the phrase “you can’t go home again”. The general idea here is that experience changes your perspective in ways that you can’t account for. This makes it difficult to leave the place you grew up and then return and still call it home.
I think this idea applies to testing too and that made me think of a You can’t go home agian heuristic. If you have run a test once, chances are if you try to run it again you will be running a new test. The world is conspiring against your ability to do things in an identical way twice. Maybe you unintentionally take an alternate path through the software, maybe the timing of your actions are different, or maybe there are system changes that you are completely unaware of. Any of these things cause you to be performing a fundamentally different test and learning novel things about your software.