130 likes | 312 Views
Delta Debugging - Demo . Presented by: Xia Cheng. Motivation. Automation is difficult fail analysis needs complete understanding of the program Automated debugging tools – Delta Debugging to resolve the problems. History.
E N D
Delta Debugging - Demo Presented by: Xia Cheng
Motivation • Automation is difficult • fail analysis needs complete understanding of the program • Automated debugging tools –Delta Debugging to resolve the problems
History • 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 • Eclipse’s interactivity with JUnit is an advantage of the platform
Delta Debugging • automated debugging approach based on systematic testing • Find failure-inducing circumstances automatically— • Circumstances, such as the program input, changes to the program code, or program executions.
DDInput • Failure-Inducing Input • Find out which part of the input causes your program to fail
The goal of DDInput • 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. • To implement it by JUnit test case
Functionality of DDInput • Run DDInput as soon as JUnit test fails • 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 the file is responsible, minimize it by using DDCore • Show the process of the Delta Debugging algorithm and the results to the user
Installation • Go to http://www.st.cs.uni-sb.de/eclipse/ • Click DDInput and download DDCore_DDInput.zip • Unzipped it into Eclipse folder
Configuration • Start ECLIPSE. • Select Help→ Software Updates→ Find and Install... • Choose Search for new features to install and select Next. • Select The Eclipse Project Updates
Configuration (Cont.) • Read the license and accept the terms (if you agree) and select Next. • Choose the ECLIPSE installation and select Finish. • The feature is not signed (yet), so likely we will get a warning. Select Install. • Restart the ECLIPSE workbench to complete the installation.
Application Guide • Create Delta Debugging View • Click Eclipse main menu Window • Choose Show View->Other… • In Java folder, choose DeltaDebugging View • Delta Debugging View includes: • Isolate Failure-Inducing Input • Minimize Failure-Inducing Input
Application Guide • File->New->JUnit Test Case • Name the file • Outline window shows the file name and all its method names
Limitation • Add the possibility to abort the process • Increase the stability • Fix a probable memory hole