Qualquer teste de unidade é melhor que nenhum. Portanto, não é um acordo do tipo tudo ou nada.
No seu caso, como o Desenvolvimento Orientado a Testes não é a norma - você se perguntará como os testes têm alguma utilidade.
Você deseja garantir que qualquer código futuro que você escreve não interrompa nenhuma funcionalidade (atual) - e é aí que seus sub-casos são úteis. Se os testes bem escritos passarem, você provavelmente não danificou nada. O próximo desenvolvedor que aparecer irá agradecer pelos testes e documentação.
O que você pode começar é se você possui uma arquitetura em camadas bem dividida, escolhe as camadas de acesso a dados e trabalha para cima (na camada da interface do usuário) com os testes. Se o projeto tiver um modelo de domínio, é o candidato mais provável para TDD, pois provavelmente terá a maior parte da lógica. Se a camada de serviço (ou lógica de negócios) estiver apenas fazendo uma chamada para a camada de Acesso a Domínios / Dados, não há sentido em fazer a camada de Serviço da maneira TDD. Esses são testes fofos e sem muito valor.
Adicionado a uma ferramenta de cobertura de código como Emma - e você pode monitorar constantemente a melhoria na cobertura geral do teste.