Advanced search
Start date
Betweenand


Program debugging based on integration coverage

Full text
Author(s):
Higor Amario de Souza
Total Authors: 1
Document type: Master's Dissertation
Press: São Paulo.
Institution: Universidade de São Paulo (USP). Escola de Artes, Ciências e Humanidades (EACH)
Defense date:
Examining board members:
Marcos Lordello Chaim; Márcio Eduardo Delamaro; Auri Marcelo Rizzo Vincenzi
Advisor: Marcos Lordello Chaim
Abstract

Debugging is the activity responsible for localizing and fixing faults generated during software development. Debugging occurs due to a successful testing activity, in which failures in the behavior of the program are revealed, indicating the existence of faults. Several techniques have been proposed to automate the debugging tasks, especially the fault localization task. Some techniques use heuristics based on coverage data obtained from the execution of tests. The goal is to indicate program code excerpts more likely to contain faults. The coverage data mostly used in automated debugging is based on white-box unit testing. Integration coverage data, obtained from the communication between the units of a program, can bring about new information with respect to the executed code, which allows new strategies to the fault localization task to be devised. This work presents a new fault localization technique called Debugging based on Integration Coverage (DIC). Two integration coverages based on method invocations are presented. These coverages are used to propose two search strategies that provides a roadmap to locate faults by investigating the more suspicious methods. The unit coverage information are used to search the faulty statement inside the suspicious methods. The DIC technique also proposes a heuristic that assigns suspiciousness values to static integration entities of the programs, namely, packages, classes, and methods. This heuristic also provides a roadmap to search for the faults. Experiments using real programs show that DIC is more effective to locate faults than solely using unit coverage information. (AU)

FAPESP's process: 11/03841-0 - Program debugging based on integration testing
Grantee:Higor Amario de Souza
Support Opportunities: Scholarships in Brazil - Master