In my last article, I wrote about Testcontainers' dependency on Docker socket access. In a nutshell, Testcontainers needs the Docker socket to remove containers after use. I also wrote on a new method to clean up containers that does not rely on Docker socket access.
But how further can we push that method?
How to run external dependencies in containers to support your unit tests and clean them up reliably, without Docker socket access or additional privileges?
How do you test your own routing protocol without a real network?
Are you afraid to change existing code because 'if it ain't broke, don't fix it'? You might want to change your mind.
I decided to switch from writing unit tests after writing implementation to using Test Driven Development. In the process, I document my first experiences.