Random Testing: Theoretical Results and Practical Implications

被引:113
作者
Arcuri, Andrea [1 ]
Iqbal, Muhammad Zohaib [1 ]
Briand, Lionel [1 ]
机构
[1] Certus Software V&V Ctr, Simula Res Lab, N-1325 Lysaker, Norway
关键词
Coupon collector; random testing; theory; Schur function; predictability; partition testing; adaptive random testing; PARTITION;
D O I
10.1109/TSE.2011.121
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A substantial amount of work has shed light on whether random testing is actually a useful testing technique. Despite its simplicity, several successful real-world applications have been reported in the literature. Although it is not going to solve all possible testing problems, random testing appears to be an essential tool in the hands of software testers. In this paper, we review and analyze the debate about random testing. Its benefits and drawbacks are discussed. Novel results addressing general questions about random testing are also presented, such as how long does random testing need, on average, to achieve testing targets (e.g., coverage), how does it scale, and how likely is it to yield similar results if we rerun it on the same testing problem (predictability). Due to its simplicity that makes the mathematical analysis of random testing tractable, we provide precise and rigorous answers to these questions. Results show that there are practical situations in which random testing is a viable option. Our theorems are backed up by simulations and we show how they can be applied to most types of software and testing criteria. In light of these results, we then assess the validity of empirical analyzes reported in the literature and derive guidelines for both practitioners and scientists.
引用
收藏
页码:258 / 277
页数:20
相关论文
共 53 条
[51]   ANALYZING PARTITION TESTING STRATEGIES [J].
WEYUKER, EJ ;
JENG, BC .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1991, 17 (07) :703-711
[52]   Evolutionary Improvement of Programs [J].
White, David R. ;
Arcuri, Andrea ;
Clark, John A. .
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, 2011, 15 (04) :515-538
[53]   A search-based framework for automatic testing of MATLAB/Simulink models [J].
Zhan, Yuan ;
Clark, John A. .
JOURNAL OF SYSTEMS AND SOFTWARE, 2008, 81 (02) :262-285