Design the pieces, test them, assemble them, no mocks.
Begin at component/class level and add tests to verify requirements are met. As the code evolves (due to refactorings), new collaborators, interactions and other components appear. TDD guides the design completely. No Mocks allowed.
TDD the peanut butter, TDD the jelly, TDD the bread, TDD the sandwich