Ricardo Murad
O que é código legado?
“Código sem teste é
código ruim”
“Código legado é
simplesmente código
sem teste”
Ainda que o código esteja bem
escrito, o risco de altera-lo
sem testes é muito alto.
If it's not broke, don't fix it
O que alterar?
Como alterar sem interferir no
comportamento existente?
Edit and Pray
Edite e reze para nada
dar errado...
Sem testes unitários
Cubra e modifique...
Proteja suas
alterações com
testes
Ferramentas e Técnicas
Frameworks de testes
Mock Objects
Ferramentas de refatoração
Fake Objects
Como escrever testes
para um código cheio de dependências?
“Grande parte do
trabalho com código legado
envolve a eliminação de dependências”
Parameterize Constructor
Extract Interface
Extract Interface
*no eclipse: ALT+SHIFT+T � Extract Interface
Identifique pontos de alteração
Encontre os pontos de testes
Escreva testes
Faça alterações e refatore
Elimine dependências
Algoritmo de trabalho com código legado
+ =
Obrigado!