August 4, 2020
Learn how to apply these ideas to your own code! I’m offering live online training for this material on April 11th and 12th. Register here.
To be notified about upcoming “Testing Without Mocks” training courses, send an email with the subject “Subscribe” to nullables-training+
subscribe@ googlegroups. com or join the mailing list here (requires Google login).
For private training, contact me directly.
Every week in my Tuesday Lunch & Learn livestream, we choose a useful software development skill, define a challenge related to that skill, and solve the challenge live. This week, it’s nullable output.
In previous episodes, we’ve talked about the Nullable Infrastructure Wrapper pattern. It’s a way of testing infrastructure code without using mocks. This is valuable because it allows us to write unit tests that don’t need backup integration tests.
Nullable Infrastructure Wrappers work by “turning off” their connection to the outside world. So how do you test code that sends data? For example, if you make a call to a microservice, or write output to
stdout? One way is to store the last output, but that only tells us the last thing that was sent. What if we need to test multiple writes? In today’s episode, we solve this problem.
To follow along, download the code from GitHub and check out the
2020-08-04 tag. To see the final result, check out the
2020-08-04-end tag or view it on GitHub.
Visit the Lunch & Learn archive for more.