A Probabilistic Analysis of the Efficiency of Automated Software Testing

被引:41
作者
Boehme, Marcel [1 ]
Paul, Soumya [2 ]
机构
[1] Univ Saarland, Software Engn Chair, D-66123 Saarbrucken, Germany
[2] Natl Univ Singapore, Sch Comp, Singapore 117548, Singapore
关键词
Partition testing; random testing; error-based partitioning; efficient testing; testing theory; NUMBER;
D O I
10.1109/TSE.2015.2487274
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We study the relative efficiencies of the random and systematic approaches to automated software testing. Using a simple but realistic set of assumptions, we propose a general model for software testing and define sampling strategies for random (R) and systematic (S-0) testing, where each sampling is associated with a sampling cost: 1 and c units of time, respectively. The two most important goals of software testing are: (i) achieving in minimal time a given degree of confidence x in a program's correctness and (ii) discovering a maximal number of errors within a given time bound (n) over cap. For both (i) and (ii), we show that there exists a bound on c beyond which R performs better than S-0 on the average. Moreover for (i), this bound depends asymptotically only on x. We also show that the efficiency of R can be fitted to the exponential curve. Using these results we design a hybrid strategy H that starts with R and switches to S-0 when S-0 is expected to discover more errors per unit time. In our experiments we find that H performs similarly or better than the most efficient of both and that S-0 may need to be significantly faster than our bounds suggest to retain efficiency over R.
引用
收藏
页码:345 / 360
页数:16
相关论文
共 37 条
[1]  
[Anonymous], 1970, Notes on structured programming
[2]  
[Anonymous], 2013, JOINT M EUROPEAN SOF, DOI [10.1145/2491411.2491430, DOI 10.1145/2491411.2491430]
[3]   Random Testing: Theoretical Results and Practical Implications [J].
Arcuri, Andrea ;
Iqbal, Muhammad Zohaib ;
Briand, Lionel .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2012, 38 (02) :258-277
[4]  
Beckman NelsE., 2008, Proceedings of the 2008 international symposium on Software testing and analysis, ISSTA '08, P3, DOI DOI 10.1145/1390630.1390634
[5]   On the Efficiency of Automated Testing [J].
Boehme, Marcel ;
Paul, Soumya .
22ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (FSE 2014), 2014, :632-642
[6]  
Böhme M, 2013, PROCEEDINGS OF THE 35TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2013), P302, DOI 10.1109/ICSE.2013.6606576
[7]  
Bohme M., 2014, P 23 ACM SIGSOFT INT
[8]  
Boyapati C., 2002, Software Engineering Notes, V27, P123, DOI 10.1145/566171.566191
[9]   ESTIMATING THE NUMBER OF SPECIES - A REVIEW [J].
BUNGE, J ;
FITZPATRICK, M .
JOURNAL OF THE AMERICAN STATISTICAL ASSOCIATION, 1993, 88 (421) :364-373
[10]  
Cadar C., 2008, Proceedings of the 8th USENIX conference on Operating systems design and implementation, OSDI'08, (USA), P209