A Markov Decision Approach to Optimize Testing Profile in Software Testing

In this paper, we demonstrate an approach to optimize software testing, minimize the expected cost with given software parameters of concern. Taking software testing process as a Markov decision process, a Markov decision model of software testing is proposed, and by using a learning strategy based on the Cross-Entropy method to optimize the software testing, we obtain the optimal testing profile. Simulation results show that this learning strategy reduces significantly in expected cost comparing with random testing, moreover, this learning strategy is more feasible and significantly in reducing the number of test cases required to detect and revealing a certain number of software defects than random testing.

[1]  Elaine J. Weyuker Using failure cost information for testing and reliability assessment , 1996, TSEM.

[2]  Kai-Yuan Cai,et al.  Optimal software testing in the setting of controlled Markov chains , 2005, Eur. J. Oper. Res..

[3]  Shie Mannor,et al.  A Tutorial on the Cross-Entropy Method , 2005, Ann. Oper. Res..

[4]  R. Rubinstein The Cross-Entropy Method for Combinatorial and Continuous Optimization , 1999 .

[5]  Boris Beizer,et al.  Software Testing Techniques , 1983 .

[6]  Mladen A. Vouk,et al.  Resource-constrained non-operational testing of software , 1998, Proceedings Ninth International Symposium on Software Reliability Engineering (Cat. No.98TB100257).

[7]  Oded Tal,et al.  An optimal statistical testing policy for software reliability demonstration of safety-critical systems , 2002, Eur. J. Oper. Res..

[8]  Yinong Chen Modelling software operational reliability via input domain-based reliability growth model , 1998, Digest of Papers. Twenty-Eighth Annual International Symposium on Fault-Tolerant Computing (Cat. No.98CB36224).

[9]  James A. Whittaker,et al.  A Markov Chain Model for Statistical Software Testing , 1994, IEEE Trans. Software Eng..

[10]  Sleyman zekici,et al.  Testing of software with an operational profile , 2000 .

[11]  Kai-Yuan Cai,et al.  Optimal software testing and adaptive software testing in the context of software cybernetics , 2002, Inf. Softw. Technol..

[12]  Walter J. Gutjahr,et al.  Importance Sampling of Test Cases in Markovian Software Usage Models , 1997, Probability in the Engineering and Informational Sciences.

[13]  John D. Musa,et al.  Operational profiles in software-reliability engineering , 1993, IEEE Software.