Too Long; Didn't Read
Unit tests are a way to explicitly set expectations about code. Good test coverage is a safety net that allows you to refactor code with more courage. Writing unit tests forces you to think about units and how the responsibility should be spent between them, making your code more modular and easier to maintain. There is no temptation to skip writing tests—a common issue when you leave tests at the end of your sprint. Set up mocking mocks, running code you want to check, and check expectations.