Unit testing is a bread and butter technique in software engineering that does not get enough attention in the space of Deep Learning. Even though testing Deep Learning code comes with challenges like non-determinism and huge amounts of data to process, it is even more important here than in classical software engineering. Because training a Deep Learning system fails quietly, many errors may hide for a long time.
In this talk we will analyze a realistic codebase that implements a Variational Autoencoder and see how each of its components can be tested. Additionally, we will develop some DL-specific insights for writing maintainable tests and running them in a CI pipeline.