sando o Moq e o TDD, por onde começa

Eu tenho um aplicativo de servidor e fiquei pensando por onde começar, se quero começar a implementar o TDD e usar o Moq.

Que livros bons eu poderia ler sobre o assunto, que não são muito "orientados para a web"

Tenho perguntas sobre o assunto, como:

Devo zombar de todos os objetos que quero testar, ou apenas daqueles que não consigo implementar, como escritores de text

O meu servidor precisa de muita configuração antes de poder fazer o que eu quero testar, devo colocá-lo em um[TestInitialize] função?

Como devo encadear meus testes, se quiser testar funcionalidades mais profundas?

questionAnswers(4)

yourAnswerToTheQuestion