Modificações de arquivos de teste de unidade

Uma tarefa comum em programas nos quais tenho trabalhado ultimamente é modificar um arquivo de texto de alguma forma. (Ei, eu estou no Linux. Tudo é um arquivo. E eu faço administrador do sistema em grande escala.)

Mas o arquivo que o código modifica pode não existir na minha área de trabalho. E eu provavelmente não quero modificá-lo se estiver na minha área de trabalho.

Eu li sobre o teste de unidade em Dive Into Python, e é bem claro o que eu quero fazer ao testar um aplicativo que converte decimal em algarismos romanos (o exemplo no DintoP). O teste é bem autocontido. Você não precisa verificar se o programa imprime a coisa certa, você só precisa verificar se as funções estão retornando a saída correta para uma determinada entrada.

No meu caso, no entanto, precisamos testar se o programa está modificando seu ambiente corretamente. Aqui está o que eu inventei:

1) Crie o arquivo "original" em um local padrão, talvez / tmp.

2) Execute a função que modifica o arquivo, passando o caminho para o arquivo em / tmp.

3) Verifique se o arquivo em / tmp foi alterado corretamente; teste de unidade aprovado / reprovado de acordo.

Isso parece desajeitado para mim. (Obtém até mesmo o kludgier se você quiser verificar se as cópias de backup do arquivo foram criadas corretamente, etc.) Alguém inventou uma maneira melhor?

questionAnswers(6)

yourAnswerToTheQuestion