This document discusses unit testing best practices and common mistakes. It provides examples from testing a core application called SCA. Key topics covered include goals of unit testing like improved quality, dangers like additional costs, test organization patterns like using a database sandbox or fake database, lessons learned like avoiding fragile tests, tips for Visual Studio and TFS, and common code smells to avoid like long test setup logic. The overall message is that unit tests provide benefits but also risks, and best practices and avoiding code smells can help maximize the upsides and minimize the downsides of unit testing.
Related topics: