Nível de detalhe dos testes da sua unidade [fechado]

Eu queria começar uma discussão sobre os detalhes que você cobre em seus testes de unidade.

Você testa as principais funcionalidades, que consistem em vários métodos, executando uma tarefa de uma só vez com um teste? ou talvez você mesmo teste propriedades automáticas?

Porque, por exemplo, vejo pouco valor em escrever um teste que testaria apenas isso:

   public Email
   {
      set
      {
         if(Regex.Match(/*....*/))
             email = value;
      }
      get
      {
        return email;
      }
   }

Como é muito claro e é apenas uma perda de tempo. Normalmente, quando faço testes de unidade, testo uma tarefa inteira - como neste exemplo - um procedimento de registro completo.

Estou perguntando isso porque, atualmente, estou lendo o livro "Aplicando Design e Padrões Conduzidos por Domínio", de autoria de Jimmy Nilsson, e lá ele aponta que está testando até mesmo pequenos detalhes com um teste dedicado.

Esse nível de cobertura não é um uso excessivo?

questionAnswers(7)

yourAnswerToTheQuestion