Como devo testar um gerador de código?

Esta é uma pergunta difícil e aberta que eu conheço, mas pensei em jogá-la no chão e ver se alguém tinha alguma sugestão interessante.

Eu desenvolvi um gerador de código que leva nossa interface python ao nosso código C ++ (gerado via SWIG) e gera o código necessário para expor isso como WebServices. Quando eu desenvolvi este código eu fiz isso usando o TDD, mas eu achei meus testes frágeis demais. Como cada teste essencialmente queria verificar que, para um dado bit de código de entrada (que é um cabeçalho C ++), obteria um determinado bit de código gerado. Escrevi um mecanismo pequeno que lê definições de teste de arquivos de entrada XML e gera teste casos dessas expectativas.

O problema é que eu tenho medo de modificar o código. Isso e o fato de que os testes da unidade são: complexos e b: frágeis.

Então, estou tentando pensar em abordagens alternativas para esse problema e parece-me que estou abordando o caminho errado. Talvez eu precise focar mais no resultado, ou seja: o código que eu gero realmente roda e faz o que eu quero, em vez de o código parecer da maneira que eu quero.

Alguém tem alguma experiência de algo parecido com isso que eles gostariam de compartilhar?

questionAnswers(8)

yourAnswerToTheQuestion