This paper presents an approach to automatic unit test data generation for branch coverage using mixed-integer linear programming, execution trees, and symbolic execution. Although these techniques have been separately investigated in the past by several researchers, combining them represents an original approach which leads to practical and feasible automatic unit test data generation. Several strategies to improve practicality have been investigated. Methods used to attain such a goal include: reducing the number of test cases, which are needed to achieve the desired coverage, based on the concept of unconstrained arcs in a control flow graph; reducing the difficulties originated by infeasible paths by producing and analyzing minimum pathlength execution trees for such unconstrained arcs; reducing the difficulties originated by non-linear path conditions by considering alternative linear paths
Automatic Unit Test Data Genration Using Mixed-Integer Linear Programming and Execution Trees
Tonella, Paolo
1997-01-01
Abstract
This paper presents an approach to automatic unit test data generation for branch coverage using mixed-integer linear programming, execution trees, and symbolic execution. Although these techniques have been separately investigated in the past by several researchers, combining them represents an original approach which leads to practical and feasible automatic unit test data generation. Several strategies to improve practicality have been investigated. Methods used to attain such a goal include: reducing the number of test cases, which are needed to achieve the desired coverage, based on the concept of unconstrained arcs in a control flow graph; reducing the difficulties originated by infeasible paths by producing and analyzing minimum pathlength execution trees for such unconstrained arcs; reducing the difficulties originated by non-linear path conditions by considering alternative linear pathsI documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.