In our lab, you are free to work on what you are interested in, and your colleagues will always be there when you need help or feedback.
ISSTA 2012 Supporting Material
This page provides supporting material for the paper Compliance Testing for Wrapper-based API Migration (pdf with minor fixes wrt. submitted manuscript), submitted to the International Symposium on Software Testing and Analysis (ISSTA).
Subjects
Here you can find the source code of (or instructions on how to find) the APIs, Wrappers and Applications used in the validation of Koloo.
APIs
- XOM 1.2.1 (nu.xom) - Source at XOM's website (zip).
- JDOM 1.1 (org.jdom) - Source at JDOM's Archive (zip).
- BCEL 5.2 (org.apache.bcel) - Source at BCEL's website. Note that during the experiments we fixed the 3 bugs detailed bellow (and reproduced the behavior described as an enhancement proposal).
- ASM 3.3.1 (org.objectweb.asm) - Source at ASM's website.
- Swing 1.4 (java.awt, javax.swing, javax.accessibility) - Swing is a core Java API that comes with Java's J2SE. We used the source code from JDK 1.4.2_19, which can be found at Sun's Archive pages. You need to download the JDK and install it. The sources are found in a src.zip file on the installation directory.
- SWT 3.3.2 (org.eclipse.swt) - SWT is an Eclipse project. We used the Linux GTK 64bit version found at Eclipse's Archives (zip).
Wrappers
- SwingWT - We used version 0.90, found at sourceforge (tar.gz).
- xom2jdom 0.1 - see xom2jdom's website for the source code and additional information.
Applications
- Memoranda - We used version 1.0-RC3.1-20070407.
- Quilt - We used version 0.6-a-5.
- SwingSet2 - the source code for SwingSet2 is distributed together with Sun's JDKs. Just follow the same instructions above on how to get Swing and look under demo/jfc/SwingSet2/. Note that SwingSet2 uses the default (empty) package; we moved it to the swingset2 package.
Results
Study Log
This Libre Office spreadsheet contains detailed logs of the violations found at each phase of the study, as well as tunings applied: Study Results.
XOM2JDOM Evolution
- Full Patch (against xom2jdom 0.1).
- See all releases at xom2jdom's website.
BCEL Bug Reports
Bugs
- 52422 - [BUG?/PATCH] LocalVariableGen.getLocalVariable() computes incorrect length
- 52441 - InstructionTargeters not being properly cleaned up
- 52468 - Invalid LocalVariableTable and LineNumberTable after modifying instruction list
Enhancement
bcel2asm Wrapper
- bcel2asm version 0.1 as an Eclipse project (zip).
- More info at bcel2asm's website
SwingWT Evolution
- Full Patch (against SwingWT 0.90).
- You can download the resulting version 0.91 at sourceforge (tar.gz).
- SwingWT CHANGELOG.