Apenas um FYI: o teste de unidade não é equivalente ao TDD. TDD é um processo no qual o teste de unidade é um elemento.
Com isso dito, se você estava procurando implementar testes de unidade, há várias coisas que você pode fazer:
Todos os novos códigos / aprimoramentos são testados
Dessa forma, você não precisa passar por um teste de unidade e tudo o que já existe, portanto, o hump inicial da implementação do teste de unidade é muito menor.
Teste partes individuais de dados
Testar algo que pode conter grandes quantidades de dados pode levar a muitos casos extremos e lacunas na cobertura do teste. Em vez disso, considere a opção 0, 1, muitos. Teste um 'lote' com 0 elementos, 1 elemento e muitos elementos. No caso de 1 elemento, teste as várias permutações em que os dados desse elemento podem estar.
A partir daí, teste as arestas (limites superiores ao tamanho de elementos individuais e quantidade de elementos no lote). Se você executa os testes regularmente e possui testes de execução longa (lotes grandes?), A maioria dos executores de testes permite a categorização para que você possa executar esses casos de teste separadamente (noturno?).
Isso deve lhe dar uma base forte.
Usando dados reais
Alimentar dados 'reais' usados anteriormente, como você está fazendo agora, não é uma má ideia. Basta complementá-lo com dados de teste bem formados para que você saiba imediatamente pontos específicos de falha. Em caso de falha no tratamento de dados reais, você pode inspecionar os resultados do processo em lote, produzir um teste de unidade para replicar o erro e voltar ao vermelho / verde / refatorar com casos úteis de regressão.