Seminars & Colloquia
Darko Marinov
Department of Computer Science, University of Illinois at Urbana-Champaign
"Automated Testing of Refactoring Engines Using Test Abstractions "
Thursday July 17, 2008 02:00 PM
Location: 3211, EBII NCSU Centennial Campus
(Visitor parking instructions)
This talk illustrates the approach on testing refactoring engines using imperative test abstractions. Refactorings are behavior-preserving program transformations that improve program design, and refactoring engines are tools that automate the application of refactorings. Refactoring engines are a key component of modern IDEs such as Eclipse or NetBeans, two popular open-source IDEs for Java. A bug in a refactoring engine can have severe consequences as it can erroneously change large bodies of source code. Test inputs for refactoring engines are programs, and the core of our testing of refactoring engines is a framework for generation of abstract syntax trees that represent Java programs. Using this framework, we discovered 21 new bugs in Eclipse and 24 in NetBeans.
Host: Tao Xie, Computer Science