Publication | Closed Access
Visualization of test information to assist fault localization
506
Citations
0
References
2002
Year
Unknown Venue
Software MaintenanceEngineeringDiagnosisSoftware EngineeringSource Code AnalysisSoftware AnalysisReliability EngineeringVisual MappingFault AnalysisTest AutomationSystems EngineeringTest InformationFuzzingNew TechniqueComputer ScienceDebuggerSoftware VisualizationStatic Program AnalysisSoftware DesignProgram AnalysisSoftware TestingFault InjectionEmpirical Studies
Locating faults is a costly, time‑consuming part of debugging that requires developers to identify and select suspicious statements involved in failures. The study introduces a visualization technique to aid fault localization. The technique maps each statement’s participation in test outcomes using color, enabling users to inspect, identify failure‑involved statements, and locate faults, and is implemented in a prototype tool evaluated through empirical studies. Empirical studies demonstrate that the technique effectively assists users in locating faults in the examined program.
One of the most expensive and time-consuming components of the debugging process is locating the errors or faults. To locate faults, developers must identify statements involved in failures and select suspicious statements that might contain faults. This paper presents a new technique that uses visualization to assist with these tasks. The technique uses color to visually map the participation of each program statement in the outcome of the execution of the program with a test suite, consisting of both passed and failed test cases. Based on this visual mapping, a user can inspect the statements in the program, identify statements involved in failures, and locate potentially faulty statements. The paper also describes a prototype tool that implements our technique along with a set of empirical studies that use the tool for evaluation of the technique. The empirical studies show that, for the subject we studied, the technique can be effective in helping a user locate faults in a program.