In this session we take an application already covered by deep integration tests and we look into adding tests for lower-level components. We talk about the pros and cons of such lower level tests, and look at some of the scenarios they can help us cover. We go through a few components and try to add test coverage, discuss how to test behavior rather than implementation, and handle some tricky testing scenarios.