Issue No. 12 - Dec. (2016 vol. 65)
Arlinta C. Barus , Institut Teknologi Del, Kab Toba Samosir 22381, Sumatera Utara, Indonesia
Tsong Yueh Chen , Swinburne University of Technology, Hawthorn, VIC, Australia
Fei-Ching Kuo , Swinburne University of Technology, Hawthorn, VIC, Australia
Huai Liu , Australia-India Research Centre for Automation Software Engineering, RMIT University, Melbourne, VIC, Australia
Robert Merkel , Monash University, Clayton, VIC, Australia
Gregg Rothermel , Department of Computer Science and Engineering, University of Nebraska - Lincoln, Lincoln, NC, NE
Random testing (RT) has been widely used in the testing of various software and hardware systems. Adaptive random testing (ART) is a family of random testing techniques that aim to enhance the failure-detection effectiveness of RT by spreading random test cases evenly throughout the input domain. ART has been empirically shown to be effective on software with numeric inputs. However, there are two aspects of ART that need to be addressed to render its adoption more widespread—applicability to programs with non-numeric inputs, and the high computation overhead of many ART algorithms. We present a linear-order ART algorithm for software with non-numeric inputs. The key requirement for using ART with non-numeric inputs is an appropriate “distance” measure. We use the concepts of categories and choices from category-partition testing to formulate such a measure. We investigate the failure-detection effectiveness of our technique by performing an empirical study on 14 object programs, using two standard metrics—F-measure and P-measure. Our ART algorithm statistically significantly outperforms RT on 10 of the 14 programs studied, and exhibits performance similar to RT on three of the four remaining programs. The selection overhead of our ART algorithm is close to that of RT.
Subspace constraints, Random processes, Power capacitors, Software algorithms, Testing, Failure analysis
A. C. Barus, T. Y. Chen, F. Kuo, H. Liu, R. Merkel and G. Rothermel, "A Cost-Effective Random Testing Method for Programs with Non-Numeric Inputs," in IEEE Transactions on Computers, vol. 65, no. 12, pp. 3509-3523, 2016.