TRregression (Trace-Based Regression ) aims to analyze execution trace to find regression bug.
A demo video is here.
Source Code Configuration
The TRegression (i.e., ERASE) project relies on Microbat project to collect execution Trace of Java program. When you are importing tregression project, you need to important Microbat project (https://github.com/llmhyy/microbat) as well. Note that all the projects are Eclipse plugin project. The imported projects are listed as follows:
- microbat (mirobat)
- microbat_instrumentator (mirobat)
- microbat_junit_test (mirobat)
- mutation (mirobat)
- sav.commons (mirobat)
- tregression (tregression)
Moreover, this prototype are build on top of Defects4J bugs. We forked Defects4J repository (https://github.com/llmhyy/defects4j) and please checkout the buggy version and fixed version by our script. (https://github.com/llmhyy/defects4j/blob/master/checkout.sh). If you run the script successfully, you can checkout the bug file structure as follows: bug_repo
|__ Chart (project_id)
|__ 1 (bug_id)
Last, please unzip this file (https://github.com/llmhyy/tregression/blob/master/tregression/dependent_lib/junit_lib.rar) under the dropins directory of your eclipse root folder. It contains all the runtime Java libraries.
Running Tregression (ERASE) on Defects4J bugs
After import the projects, right-click the tregression project, and choose "Run As Eclipse Application", you can start debugging Tregression. You need to configure the settings in the Eclipse-application as follows:
Second, please switch to Tregression perspective by (Windows >> Perspectives >> Open Operspective >> Other).
Third, click "Tregression" menu >> Run for Seperate Versions. The tool will automate the regression bug detection.