...
Good books for unit testing, TDD, and higher-level tests
Freeman and Pryce, "Growing Object-Oriented Software, Guided by Tests"
Beck, "Test Driven Development: By Example"
Fowler, "Mocks Aren't Stubs" - Martin Fowler on the terminology and usage of mocks, stubs, test doubles - all those "fake collaborators"
A couple of Bob Martin's books are particularly noteworthy for covering lots and lots of desirable attributes for code
Martin, "Agile Software Development, Principles, Patterns, and Practices"
Martin, "Clean Code: A Handbook of Agile Software Craftsmanship"
Some test frameworks
JUnit - the original (Java)
...
Also
Feathers, Michael C., Working Effectively with Legacy Code , Prentice Hall, 2005, p. xvi.
...