

I know what to do, so how hard can it be?” You claim, “I’ve seen all the ’Rocky’ films and watched a lot of boxing matches on YouTube. Imagine now that you want to be a boxer too, except you don’t practice your jabs, hooks, and uppercuts, nor run or spar. They also take on sparring matches at reduced intensity, making sure not to injure themselves or the opponent. They run for miles on end to boost their cardio, and they combine their cardio with technical striking skills in mock setups.

Before ever stepping into the ring, they practice their jabs, hooks, and uppercuts. When boxers first start off, they train a lot. However, the following analogy summarizes the key point and should resonate with engineers. This post does not delve into all of the reasons why testing is needed, since most are familiar with the concept of the testing pyramid and its utility. Why do we need to test? Aren’t we in production?Īlmost every engineer has heard the above phrase at least once in their career (or has felt it through the ambient glow of the untested codebase).

If you’d like to check out part 1 and part 2 before reading on, feel free to refer to the following: This is the final blog post in a three-part series that describes techniques for shortening the test feedback cycle with infrastructure on demand in your integration tests and using Spring Kafka in a “vertically” scaled way to showcase this process. Now imagine them combined-it gets much harder. All of these share one thing in common: complexity in testing.
