Developers rely on compilation, test suites, and tools to preserve observable behavior during refactoring. However, most refactoring tools don't implement all the preconditions that guarantee refactoring correctness because formally identifying them is cost-prohibitive. Therefore, these tools could perform nonbehavior-preserving transformations. The authors present a tool for improving safety during refactoring that automatically generates a test suite suited for detecting behavioral changes. They used this tool to evaluate seven real case study refactorings (from 3 to 100 KLOC).
No takes yet. Share an insight, caveat, or question.
Soares et al. (2010) studied this question.
Synapse has enriched 5 related papers. Consider them for comparative context: