TDD: Por que há apenas um teste por função?

Eu estou tendo dificuldade em entender porque há apenas um teste por função na maioria dos códigos TDD profissionais que eu vi. Quando eu me aproximei de TDD inicialmente, eu costumava agrupar de 4 a 5 testes por função se eles estivessem relacionados, mas vejo que não parece ser o padrão. Eu sei que é mais descritivo ter apenas um teste por função porque você pode mais facilmente restringir o problema, mas eu me vejo lutando para criar nomes de função para diferenciar os diferentes testes, já que muitos são tão semelhantes.

Então, minha pergunta é: é realmente uma prática ruim colocar vários testes em uma função e, se sim, por quê? Existe um consenso lá fora? obrigado

Edit: Uau toneladas de grandes respostas. Estou convencido. Você precisa realmente separá-los todos. Eu passei por alguns testes recentes que eu tinha escrito e os separei todos e eis que era muito mais fácil de ler e ajudou a entender muito melhor o que eu estava testando. Também dando aos testes os seus próprios nomes longos e verbosos, ele me deu idéias como "Oh, espere, eu não testei essa outra coisa", então por toda parte eu acho que é o caminho a seguir.

Grandes respostas. Vai ser difícil escolher um vencedor

questionAnswers(8)

yourAnswerToTheQuestion