Existem variações baseadas em diferentes estilos e idiomas de codificação. No entanto, independentemente do idioma usado, a maior variação é você.
Robert Martin disse uma vez:
"À medida que os testes ficam mais específicos, o código fica mais genérico".
Isso me fez pensar. Testes mais específicos significam mais código de teste. Um código de produção mais genérico significa menos código; portanto, as taxas de teste / código devem aumentar à medida que o código evolui.
Mas espere, isso também não é bom. Em alguns casos específicos, por exemplo, quando você define um determinado algoritmo, você pode ter apenas 6 a 10 linhas de código contendo alguns "se" s, um tempo e talvez 2-3 recursões. Posso dizer que esse código provavelmente terá mais 100 linhas de código de teste.
Em um projeto real, algo maior que apenas alguns algoritmos, a relação teste / código deve estar entre 1: 1 e 2: 1. Se ficar acima de 2: 1, é um cheiro que você tem testes que devem ser refatorados ou excluídos (ou talvez código difícil de testar). Você sempre deve investir a mesma quantidade de cuidado e refatoração em seus testes e em seu código de produção.
De qualquer forma, a melhor resposta para sua pergunta talvez seja "Complexidade Ciclomática" . Quanto maior a complexidade ciclomática do seu método, mais exponencialmente mais testes você precisa escrever para cobrir todos os casos.