Affiliation:
1. University of Illinois at Urbana-Champaign
Abstract
In
unit testing
, a program is decomposed into units which are collections of functions. A part of unit can be tested by generating inputs for a single entry function. The entry function may contain pointer arguments, in which case the inputs to the unit are
memory graphs
. The paper addresses the problem of automating unit testing with memory graphs as inputs. The approach used builds on previous work combining
symbolic
and
concrete execution
, and more specifically, using such a combination to
generate test inputs
to explore all feasible execution paths. The current work develops a method to represent and track constraints that capture the behavior of a symbolic execution of a unit with memory graphs as inputs. Moreover, an efficient constraint solver is proposed to facilitate incremental generation of such test inputs. Finally, CUTE, a tool implementing the method is described together with the results of applying CUTE to real-world examples of C code.
Publisher
Association for Computing Machinery (ACM)
Cited by
168 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献