TY - GEN
T1 - Covana
T2 - 33rd International Conference on Software Engineering, ICSE 2011
AU - Xiao, Xusheng
AU - Xie, Tao
AU - Tillmann, Nikolai
AU - De Halleux, Jonathan
PY - 2011
Y1 - 2011
N2 - Achieving high structural coverage is an important goal of software testing. Instead of manually producing test inputs that achieve high structural coverage, testers or developers can employ tools built based on automated test-generation approaches, such as Pex, to automatically generate such test inputs. Although these tools can easily generate test inputs that achieve high structural coverage for simple programs, when applied on complex programs in practice, these tools face various problems, such as the problems of dealing with method calls to external libraries or generating method-call sequences to produce desired object states. Since these tools are currently not powerful enough to deal with these various problems in testing complex programs, we propose cooperative developer testing, where developers provide guidance to help tools achieve higher structural coverage. In this demo, we present Covana, a tool that precisely identifies and reports problems that prevent Pex from achieving high structural coverage. Covana identifies problems primarily by determining whether branch statements containing not-covered branches have data dependencies on problem candidates.
AB - Achieving high structural coverage is an important goal of software testing. Instead of manually producing test inputs that achieve high structural coverage, testers or developers can employ tools built based on automated test-generation approaches, such as Pex, to automatically generate such test inputs. Although these tools can easily generate test inputs that achieve high structural coverage for simple programs, when applied on complex programs in practice, these tools face various problems, such as the problems of dealing with method calls to external libraries or generating method-call sequences to produce desired object states. Since these tools are currently not powerful enough to deal with these various problems in testing complex programs, we propose cooperative developer testing, where developers provide guidance to help tools achieve higher structural coverage. In this demo, we present Covana, a tool that precisely identifies and reports problems that prevent Pex from achieving high structural coverage. Covana identifies problems primarily by determining whether branch statements containing not-covered branches have data dependencies on problem candidates.
KW - data dependency
KW - dynamic symbolic execution
KW - problem identification
KW - structural test generation
UR - https://www.scopus.com/pages/publications/79959873634
UR - https://www.scopus.com/pages/publications/79959873634#tab=citedBy
U2 - 10.1145/1985793.1985976
DO - 10.1145/1985793.1985976
M3 - Conference contribution
AN - SCOPUS:79959873634
SN - 9781450304450
T3 - Proceedings - International Conference on Software Engineering
SP - 1004
EP - 1006
BT - ICSE 2011 - 33rd International Conference on Software Engineering, Proceedings of the Conference
Y2 - 21 May 2011 through 28 May 2011
ER -