Unit tests are the foundation of the test pyramid. While there is no single precise definition of a "unit" that the name refers to, we can deduce a number of desirable properties of their tests, e.g. from how they are used in the development cycle.
These properties in turn have implications on how we want to design those units under test. This talk will not try to give yet another definition of what is or isn't a unit, but it will try to narrow down our design goals for those mysterious beasts.