A refactorización (do inglés Refactoring) é unha técnica da enxeñería do software para reestruturar un código fonte, alterando a súa estrutura interna sen cambiar o seu comportamento externo.

Realízase a miúdo como parte do proceso de desenvolvemento do software: os desenvolvedores de software alternan a inserción de novas funcionalidades e casos de proba coa refactorización do código para mellorar a súa consistencia interna e a súa claridade. As probas aseguran que a refactorización non cambia o comportamento do código.