A Probabilistic Analysis of the Efficiency of Automated Software Testing

被引:40
作者
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
    Arcuri, Andrea
    Iqbal, Muhammad Zohaib
    Briand, Lionel
    [J]. 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
    Boehme, Marcel
    Paul, Soumya
    [J]. 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
    BUNGE, J
    FITZPATRICK, M
    [J]. 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