Presentation is loading. Please wait.

Presentation is loading. Please wait.

Delta Debugging - Demo Presented by: Xia Cheng. Motivation Automation is difficult Automation is difficult fail analysis needs complete understanding.

Similar presentations


Presentation on theme: "Delta Debugging - Demo Presented by: Xia Cheng. Motivation Automation is difficult Automation is difficult fail analysis needs complete understanding."— Presentation transcript:

1 Delta Debugging - Demo Presented by: Xia Cheng

2 Motivation Automation is difficult Automation is difficult fail analysis needs complete understanding of the program fail analysis needs complete understanding of the program Automated debugging tools – Delta Debugging to resolve the problems Automated debugging tools – Delta Debugging to resolve the problems

3 History In 2001, Andreas Zeller wrote an article “ Automated Debugging: Are We Close? ” In 2001, Andreas Zeller wrote an article “ Automated Debugging: Are We Close? ” Zeller ’ s studies regarding the isolation of cause- effect chains from computer programs and the simplification of failure-inducing input Zeller ’ s studies regarding the isolation of cause- effect chains from computer programs and the simplification of failure-inducing input Eclipse ’ s interactivity with JUnit is an advantage of the platform Eclipse ’ s interactivity with JUnit is an advantage of the platform

4 Delta Debugging automated debugging approach based on systematic testing automated debugging approach based on systematic testing Find failure-inducing circumstances automatically — Find failure-inducing circumstances automatically — –Circumstances, such as the program input, changes to the program code, or program executions.

5 DDInput Failure-Inducing Input Failure-Inducing Input Find out which part of the input causes your program to fail Find out which part of the input causes your program to fail

6 The goal of DDInput to automatically minimize an input file until only the part relevant for a failure remains to automatically minimize an input file until only the part relevant for a failure remains with the DDInput plug-in, this huge file can automatically be minimized until only the failure- inducing statement remains. with the DDInput plug-in, this huge file can automatically be minimized until only the failure- inducing statement remains. To implement it by JUnit test case To implement it by JUnit test case

7 Functionality of DDInput Run DDInput as soon as JUnit test fails Run DDInput as soon as JUnit test fails Determine, if the failing JUnit test opens a resource Determine, if the failing JUnit test opens a resource If it opens a file, determine if the file is responsible for the failing of the test If it opens a file, determine if the file is responsible for the failing of the test If the file is responsible, minimize it by using DDCore If the file is responsible, minimize it by using DDCore Show the process of the Delta Debugging algorithm and the results to the user Show the process of the Delta Debugging algorithm and the results to the user

8 Installation Go to http://www.st.cs.uni-sb.de/eclipse/ Go to http://www.st.cs.uni-sb.de/eclipse/http://www.st.cs.uni-sb.de/eclipse/ Click DDInput and download DDCore_DDInput.zip Click DDInput and download DDCore_DDInput.zip Unzipped it into Eclipse folder Unzipped it into Eclipse folder

9 Configuration Start ECLIPSE. Start ECLIPSE. Select Help → Software Updates → Find and Install... Select Help → Software Updates → Find and Install... Choose Search for new features to install and select Next. Choose Search for new features to install and select Next. Select The Eclipse Project Updates Select The Eclipse Project Updates

10 Configuration (Cont.) Read the license and accept the terms (if you agree) and select Next. Read the license and accept the terms (if you agree) and select Next. Choose the ECLIPSE installation and select Finish. Choose the ECLIPSE installation and select Finish. The feature is not signed (yet), so likely we will get a warning. Select Install. The feature is not signed (yet), so likely we will get a warning. Select Install. Restart the ECLIPSE workbench to complete the installation. Restart the ECLIPSE workbench to complete the installation.

11 Application Guide Create Delta Debugging View Create Delta Debugging View –Click Eclipse main menu Window –Choose Show View->Other … –In Java folder, choose DeltaDebugging View Delta Debugging View includes: Delta Debugging View includes: –Isolate Failure-Inducing Input –Minimize Failure-Inducing Input

12 Application Guide File->New->JUnit Test Case File->New->JUnit Test Case Name the file Name the file Outline window shows the file name and all its method names Outline window shows the file name and all its method names

13 Limitation Add the possibility to abort the process Add the possibility to abort the process Increase the stability Increase the stability Fix a probable memory hole Fix a probable memory hole


Download ppt "Delta Debugging - Demo Presented by: Xia Cheng. Motivation Automation is difficult Automation is difficult fail analysis needs complete understanding."

Similar presentations


Ads by Google