Skip to main content
Article thumbnail
Location of Repository


By Kely M. Garcia


Refactorings are behavior preserving program transformations that improve program design. Refactoring engines are tools that automate the application of refactorings: first the user chooses a refactoring to apply, then the engine checks if the transformation is safe, and if so, transforms the program. Refactoring engines are a key component of modern IDEs and programmers rely on them to perform refactorings. A bug in the refactoring engine can have severe consequences as it can erroneously change large bodies of the program. The purpose of this thesis is testing several refactorings in NetBeans, a popular IDE that includes a refactoring engine for the Java programming language. We use two types of tests: (1) existing tests manually written for Eclipse, another popular IDE for Java, and (2) tests automatically generated with a framework called ASTGen. We reported 53 new bugs for the NetBeans refactoring engine; 27 bugs were found using Eclipse tests, and 26 bugs were found using ASTGen tests. We reported these bugs to Issuezilla, the bug-tracking system for NetBeans, and the developers already fixed 5 of these bugs, declared 7 bugs as duplicates, declared 1 bug as “won’t be fixed”, declared 2 bugs as “work fine in latest version”, and confirmed 43 as real bugs

Year: 2007
OAI identifier: oai:CiteSeerX.psu:
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • (external link)
  • (external link)
  • Suggested articles

    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.