Sometimes I wonder whether there is such a thing as taking an analogy too far?
I am puzzling with a bit of refactoring for my model-based testing tool, and need to rename my “tests” because now they will just be building blocks for larger composite systems for running scenarios.
Then I went along these lines: if I name the current tests “atoms” because they test a single function without context, I can name composite tests “molecules” because they are composed of multiple atoms. Of course, scenarios are “reactions” and the outcomes of executing a reaction are “products” with test failures becoming “explosions.”