DocumentCode
555324
Title
Precise identification of problems for structural test generation
Author
Xiao, Xusheng ; Xie, Tao ; Tillmann, Nikolai ; De Halleux, Jonathan
Author_Institution
Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC, USA
fYear
2011
fDate
21-28 May 2011
Firstpage
611
Lastpage
620
Abstract
An important goal of software testing is to achieve at least high structural coverage. To reduce the manual efforts of producing such high-covering test inputs, testers or developers can employ tools built based on automated structural test-generation approaches. Although these tools can easily achieve high structural coverage for simple programs, when they are applied on complex programs in practice, these tools face various problems, such as (1) the external-method-call problem (EMCP), where tools cannot deal with method calls to external libraries; (2) the object-creation problem (OCP), where tools fails to generate method-call sequences to produce desirable object states. Since these tools currently could not be powerful enough to deal with these problems in testing complex programs in practice, we propose cooperative developer testing, where developers provide guidance to help tools achieve higher structural coverage. To reduce the efforts of developers in providing guidance to tools, in this paper, we propose a novel approach, called Covana, which precisely identifies and reports problems that prevent the tools from achieving high structural coverage primarily by determining whether branch statements containing notcovered branches have data dependencies on problem candidates. We provide two techniques to instantiate Covana to identify EMCPs and OCPs. Finally, we conduct evaluations on two open source projects to show the effectiveness of Covana in identifying EMCPs and OCPs.
Keywords
program testing; Covana; EMCP; OCP; automated structural test-generation; external-method-call problem; object-creation problem; precise identification; software testing; structural test generation; Engines; Instruments; Libraries; Monitoring; Runtime; Software testing; data dependency; dynamic symbolic execution; problem identification; structural test generation;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering (ICSE), 2011 33rd International Conference on
Conference_Location
Honolulu, HI
ISSN
0270-5257
Print_ISBN
978-1-4503-0445-0
Electronic_ISBN
0270-5257
Type
conf
DOI
10.1145/1985793.1985876
Filename
6032500
Link To Document