dingyuchen / tregression

Analyze execution trace to find regression bug

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TRregression (ERASE)

TRregression (Trace-Based Regression ) aims to analyze execution trace to find regression bug.

Snapshot of TRregression

A demo video is here.

IMAGE ALT TEXT HERE

Citation

If you need to reference our technique, please use the following citations:

  • Haijun Wang#, Yun Lin#*, Zijiang Yang, Jun Sun, Yang Liu, Jin Song Dong, Qinghua Zhen, and Ting Liu. Explaining Regressions via Alignment Slicing and Mending, Transcation on Software Engineering (TSE 2019). (#co-first author, *corrsponding author)

Source Code Configuration

Dependency

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)
      |__ 2
      |__ ...

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: Snapshot of TRregression

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.

About

Analyze execution trace to find regression bug


Languages

Language:Java 100.0%