DocumentCode :
19873
Title :
The Risks of Coverage-Directed Test Case Generation
Author :
Gay, Gregory ; Staats, Matt ; Whalen, Michael ; Heimdahl, Mats P. E.
Author_Institution :
Dept. of Comput. Sci. & Eng., Univ. of South Carolina, Columbia, SC, USA
Volume :
41
Issue :
8
fYear :
2015
fDate :
Aug. 1 2015
Firstpage :
803
Lastpage :
819
Abstract :
A number of structural coverage criteria have been proposed to measure the adequacy of testing efforts. In the avionics and other critical systems domains, test suites satisfying structural coverage criteria are mandated by standards. With the advent of powerful automated test generation tools, it is tempting to simply generate test inputs to satisfy these structural coverage criteria. However, while techniques to produce coverage-providing tests are well established, the effectiveness of such approaches in terms of fault detection ability has not been adequately studied. In this work, we evaluate the effectiveness of test suites generated to satisfy four coverage criteria through counterexample-based test generation and a random generation approach-where tests are randomly generated until coverage is achieved-contrasted against purely random test suites of equal size. Our results yield three key conclusions. First, coverage criteria satisfaction alone can be a poor indication of fault finding effectiveness, with inconsistent results between the seven case examples (and random test suites of equal size often providing similar-or even higher-levels of fault finding). Second, the use of structural coverage as a supplement-rather than a target-for test generation can have a positive impact, with random test suites reduced to a coverage-providing subset detecting up to 13.5 percent more faults than test suites generated specifically to achieve coverage. Finally, Observable MC/DC, a criterion designed to account for program structure and the selection of the test oracle, can-in part-address the failings of traditional structural coverage criteria, allowing for the generation of test suites achieving higher levels of fault detection than random test suites of equal size. These observations point to risks inherent in the increase in test automation in critical systems, and the need for more research in how coverage criteria, test generation approaches, the test oracle use- , and system structure jointly influence test effectiveness.
Keywords :
program testing; risk management; software fault tolerance; automated test generation tools; counterexample-based test generation; coverage criteria satisfaction; coverage-directed test case generation; critical systems; fault detection; fault finding effectiveness; observable MC/DC; program structure; random generation approach; random test suites; risks; software testing; structural coverage criteria; system structure; test automation; test oracle selection; Aerospace electronics; Fault detection; Measurement; NASA; Software packages; Standards; Testing; Software Testing; Software testing; System Testing; system testing;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2015.2421011
Filename :
7081779
Link To Document :
بازگشت