Title: Overview of Unit Testing and Mocking Abstract: As the complexity and size of systems continues to grow, the software development industry is becoming increasingly conscious of the risks involved in blindly evolving systems whilst hoping that nothing breaks. Unit testing offers a solution which allows developers to modify code safe in the knowledge that there is a safety net of tests to inform them if anything breaks. This talk gives a quick overview of different types of testing in order to provide a context before delving into unit testing, basic test design techniques and common challenges faced by developers. The concept of test doubles is also explored as a means of isolating your unit-under-test from its dependencies.