Ph.D. Proposal
Demand-Driven Structural Testing
Jonathan Misurda (CS Grad/Pitt)
Tuesday, November 25, 2008
3:00pm - SENSQ 6106 - Eli Lilly Room
Abstract
In the effort to produce bug-free programs, suites of test inputs are used to exercise the logic and computations of a program. Determining the quality of a test suite is done by computing various metrics, the most common of which are the structural test coverage metrics. A structural test coverage metric is a quantitative way to measure the adequacy of a test suite by looking at the structure of a program, such as its control-flow or data-flow graphs, and computing what percentage of that structure has been executed in a run of the test suite.
To perform structural testing, code must be inserted into the program that observes and records its runtime behavior. This code is usually inserted at compile- or load-time and slows the program’s execution and increases its dynamic memory needs, with the implication that large programs may be infeasible to test in this manner. This work proposes that in lieu of static insertion of this instrumentation, that code is dynamically inserted and removed when no longer necessary. In this way, long-running programs will be minimally impacted. Additionally, the dynamic insertion allows the code that is shipped to be tested, rather than changing the binary image to accommodate testing code. Finally, the demand-driven approach will only place instrumentation along feasible paths, avoiding the costs associated with portions of the code that are left unexecuted or are infeasible.
Dissertation Adviser
Dr. Bruce Childers, Department of Computer Science
Committee Members
Dr. Panos K. Chrysanthis, Department of Computer Science
Dr. Youtao Zhang, Department of Computer Science
Dr. Mary Lou Soffa, University of Virginia





