Refactoring is an important technique in today's software development practice. If applied correctly, it can significantly improve software design without altering behavior. During refactoring, developers rely on regression testing. However, without further knowledge about the test suite, how can we be confident that regression testing will detect potential refactoring faults? To get more insight into adequacy of refactoring tests, we therefore suggest test coverage of a refactoring's scope of impact as a quantitative measure of confidence. This paper shows how to identify a refactoring's scope of impact and proposes scope-based test coverage criteria. An example is included that illustrates how to use the new test coverage criteria for assessing the adequacy of refactoring tests.
Index Terms:
testing, refactoring, code coverage, test adequacy criteria, dominator, control flow graph
Citation:
Trung Dinh-Trong, Birgit Geppert, J. Jenny Li, null null, Frank Roessler, "Looking for More Confidence in Refactoring? How to Assess Adequacy of Your Refactoring Tests," qsic, pp.255-263, 2008 The Eighth International Conference on Quality Software, 2008